-
Notifications
You must be signed in to change notification settings - Fork 17.8k
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
os: TestChtimes fails on netbsd #19293
Comments
NetBSD's stat(2) manpage says:
And the chtimes manpage says:
Those magic nanosecond values are: https://ftp.netbsd.org/pub/NetBSD/NetBSD-current/src/sys/sys/stat.h
To change atime, do we need to do two system calls, once for modtime first, and then one for atime only with mtime set to UTIME_OMIT? |
CL https://golang.org/cl/37492 mentions this issue. |
That failing test is preventing other tests from running. Let's see what else is broken. Updates #19293 Change-Id: I4c5784be94103ef882f29dec9db08d76a48aff28 Reviewed-on: https://go-review.googlesource.com/37492 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Matt Layher <mdlayher@gmail.com>
I can no longer reproduce this with NetBSD 8-BETA, our new minimum version requirement for NetBSD. So maybe it was fixed since we last saw it. /cc @bsiegert |
(If so, all that would remain here is removing the t.Skip in pkg os TestChtimes) |
Change https://golang.org/cl/80875 mentions this issue: |
Reverting. I was wrong. It still fails on the builders. I don't know what's different about my VMWare VM, but on GCE it fails. |
Oh, I figured it out. I tried the Timespec.Nsec UTIME_OMIT thing above, but this bug is actually because our builders run:
... at boot, to speed up builds. We do the same on almost all our Unix builders, with whatever spelling of the command they use. On NetBSD, though, setting "noatime" seems to also disable explicit I verified on my NetBSD VM:
So I guess I'll just skip that test on NetBSD and close this bug. @bsiegert, @krytarowski, @zoulasc, I assume that's expected behavior, but let me know if not. |
Change https://golang.org/cl/81355 mentions this issue: |
Hmm, From a quick look I don't see a relation between MNT_NOATIME and lack of precise time. I think we should update to syscalls from NetBSD 8.0 (so switch to: __stat50). There were changes in time functions like extending to 64-bit time_t. At some point we have added POSIX interfaces. Some subtle bugs can go from mixing old syscalls (they appear to be from NetBSD 5.) and assume behavior from 8.0. |
@krytarowski, this isn't about precise time. Ignore the nanoseconds part. The key part is:
|
The NetBSD builders are back up and running (now on GCE instead of dedicated machine singular) and are failing with:
(NetBSD 7.0)
/cc @bsiegert @mdempsky
The text was updated successfully, but these errors were encountered: