-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Revisit arm support #26
base: master
Are you sure you want to change the base?
Conversation
…er the "math" package
I spoke too soon, i ran
|
This seems to be an error in the logging? Doesn't look like an actual protocol error to me, but I'm not sure why these tests are failing |
I don't think this is a styx bug, but looks like a Go bug which might be manifesting peculiarly on arm and/or plan9/arm specifically: golang/go#29388 Specifically, this is caused by a log message being triggered after the test in which the log message would have been sent during, has ended. |
Tests pass, for example, if you disable the testing logger at
then:
So I think this doesn't cause an issues for styx, jsonfs works fine, etc., but plan9/arm as a target for Go has a bug in the logger for the |
Hey, sorry for taking so long to look at this, and thanks for working on it! Indeed we don't need a 64-bit integer for parsing 9P messages. That limit you changed is just used for an internal message buffer, and messages cannot be larger than a uint32. I don't have an ARM system handy right now, was this the only change needed to build the package? I'm happy to merge if so. |
I think so, it’s been awhile since I looked at this I don’t have a computer on me at the moment I can use, but I’ll get back to testing this in the near future I hope iirc the ARM errors boiled down to a weird race condition that crops up in Go for something in the log/test package on ARMv5(?) specifically I don’t remember if I dug up other errors during this time and it may be the case that some more work needs to be done |
Thanks for checking in! |
Might the race condition be #13 ? I spent a couple hours looking at that the other day but didn't quite figure it out. If it's that, we have the same problem on x86. |
I'm currently working on a file system using styx that can't be built for arm due to overflow errors: henesy/abfs#1
Notably, the old constant code yields a value that indicates a 64-bit integer: https://play.golang.org/p/AUpYTNF6hhs
However, I don't believe a 64-bit integer is necessary here for 9p parsing, I could be incorrect and am open to further input :)
The changes provided seem to pass
go test
and builds with no warnings/errors for GOARCH=arm.I saw that the commit I based this off of was reverted due to tests failing, would it be possible to get details on what was failing if this patch doesn't solve the issues?
Hardware used was a Raspberry Pi 1 running 9front/arm.
Tested against jsonfs - my fs is still a port in progress to plan9.