[OpenAFS-devel] Linux atime nits

Marc Aurele La France tsi@ualberta.ca
Wed, 6 Jan 2010 10:17:05 -0700 (Mountain Standard Time)


On Wed, 6 Jan 2010, Simon Wilkinson wrote:
> Marc Aurele La France wrote:
>> src/afs/LINUX*/osi_file.c (all versions) should set the inode's S_NOATIME, 
>> instead of MS_NOATIME, as the latter is a super block flag, which in recent 
>> kernels collides with another inode flag.  This means preventing atime 
>> updates for cache files isn't currently effective.

> The split between MS_NOATIME (as a super block flag) and S_NOATIME (as an 
> inode flag) seems to have happened with 2.4.0.

My archives indicate the split appeared in 2.4.0-test6 kernels.

WRT prior kernels, it's easy enough to ...

#ifndef S_NOATIME
#define S_NOATIME MS_NOATIME
#endif

... in the various osi_file.c's.

> I've put a patch to address this into gerrit as
> http://gerrit.openafs.org/1070

>> Also, given AFS itself doesn't appear to track access times, shouldn't 
>> src/afs/LINUX*/osi_vfsops.c (again, all versions) set MS_NOATIME in its 
>> super block?

> Yes, I think it probably should. A patch for this is in gerrit as
> http://gerrit.openafs.org/1071

> I suspect this one will require a lot of testing, just to make sure the mount 
> options change has no unintended side effects.

OK.  Thanks.

Marc.

+----------------------------------+----------------------------------+
|  Marc Aurele La France           |  work:   1-780-492-9310          |
|  Academic Information and        |  fax:    1-780-492-1729          |
|    Communications Technologies   |  email:  tsi@ualberta.ca         |
|  352 General Services Building   +----------------------------------+
|  University of Alberta           |                                  |
|  Edmonton, Alberta               |    Standard disclaimers apply    |
|  T6G 2H1                         |                                  |
|  CANADA                          |                                  |
+----------------------------------+----------------------------------+