On 04.12.2018 19:20, Christos Zoulas wrote: > In article <1543941318.804.8.camel%gentoo.org@localhost>, > MichaŠGórny <mgorny%gentoo.org@localhost> wrote: >> -=-=-=-=-=- >> >> Hello, >> >> Today me and Kamil noticed some more LLVM tests failing due to the host >> filesystem being mounted with 'noatime' option. Upon closer >> investigation, it turned out that on NetBSD noatime inhibits not only >> implicit atime updates but also prevents the utime() family of functions >>from updating it. >> >> Is there a specific reason for this behavior? I'm not saying it's >> incorrect (in fact, I'm pretty sure it's allowed by POSIX) but it's >> somewhat surprising and contrary to what other tested systems do (Linux, >> FreeBSD). >> >> FWIU the main purpose of using 'noatime' is to inhibit inode updates >> on file accesses and therefore avoid spurious writes. However, I don't >> think this applies if the program sets atime explicitly; especially if >> it simultaneously updates mtime, therefore requiring an inode write >> anyway. > > I think this is an artifact of the code path to update the times... > Unfortunately this seems to be handled at the filesystem level :-( > https://nxr.netbsd.org/search?q=&project=src&defs=&refs=MNT_NOATIME > Yes, I think that explicitly setting the atime using utime() should > be allowed... Perhaps we should take this opportunity to refactor the > code. > > christos > While there, nodevmtime (MNT_NODEVMTIME) is badly under documented and supported in a selection of filesystems. A potential refactoring could handle both of them in one go. I'm going to register this request for enhancement in src/doc/TODO.sanitizers.
Attachment:
signature.asc
Description: OpenPGP digital signature