-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 According to Eric Blake on 12/17/2009 5:16 PM: > Jim Meyering <jim <at> meyering.net> writes: > >>> Sounds quite hairy. Any ideas for improvements? >> Thanks for investigating and scoping out the solution. >> I agree that it sounds hairy, but it also sounds like the required approach. > > So, here we go in three steps; maybe they are worth squashing into one when I > finally apply (I'm still running tests on more platforms, first, in case any > other gotchas pop up). I also still need to report this to lkml.
On further investigation, the problem doesn't appear to be quite as pervasive as I thought. It only happens when mtime is UTIME_OMIT; that is, when the call is only requesting a change in atime. It appears that what the kernel is doing is treating it like read(), which modifies atime but not ctime. The behavior is still a bug, but it means my patch is not quite right (the test only tried UTIME_OMIT on the atime, so it wasn't triggering the bug, and the workaround doesn't need to worry about UTIME_NOW or about atime, just mtime). - -- Don't work too hard, make some time for fun as well! Eric Blake e...@byu.net -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (Cygwin) Comment: Public key at home.comcast.net/~ericblake/eblake.gpg Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAksrEBgACgkQ84KuGfSFAYB8lwCfTxMva0QeeqVxFuWh5Sspss+o F9gAniV1//8uocGQ2ZK3KqpDuLWSGMW0 =Tdcp -----END PGP SIGNATURE-----