NFSv4 Linux client atime for exclusive create
rmacklem at uoguelph.ca
Wed Apr 19 20:29:11 UTC 2017
Doug Rabson wrote:
>Is the client using EXCLUSIVE4 or EXCLUSIVE4_1 for the open? If its EXCLUSIVE4_1, i.e. the >mode which allows attribute setting during the open, the client should use the value of >the supattr_exclcreat attribute (see section 22.214.171.124 of rfc5661) to figure out what >attributes can be set. In this case, supattr_exclcreat should not include atime which should >force the client to update it separately.
The packet trace Jim sent me was NFSv4.0 and, as such, used EXCLUSIVE4.
(The Open was followed by a Setattr in a separate compound RPC that only specified
the "mode" attribute. The client never seemed to specify an atime.)
I haven't tried an NFSv4.1 mount yet, but I need to take a look at it.
(I did succeed in reproducing the problem with an NFSV4.0 mount from a Linux
box I have.)
>It would be helpful to see a packet trace for this which should make it clearer what is >happening here.
Jim did send me this off list.
I now have a patch that stores the create_verifier in an extended attribute and I think
that should be fine? (It does imply that NFSv4.0 read/write mounts will only work
correctly for server file systems that support extended attributes, but I think that
is a reasonable restriction that can't be avoided?)
More information about the freebsd-fs