nfsd: support ext4 i_version
authorJ. Bruce Fields <bfields@citi.umich.edu>
Thu, 16 Apr 2009 21:33:25 +0000 (17:33 -0400)
committerJ. Bruce Fields <bfields@citi.umich.edu>
Wed, 29 Apr 2009 15:35:49 +0000 (11:35 -0400)
commitc654b8a9cba6002aad1c01919e4928a79a4a6dcf
treefee411bb42ec86e72a9e843529551e559c1f2749
parent3352d2c2d0540955a7bbb3421a28330af7f9d79c
nfsd: support ext4 i_version

ext4 supports a real NFSv4 change attribute, which is bumped whenever
the ctime would be updated, including times when two updates arrive
within a jiffy of each other.  (Note that although ext4 has space for
nanosecond-precision ctime, the real resolution is lower: it actually
uses jiffies as the time-source.)  This ensures clients will invalidate
their caches when they need to.

There is some fear that keeping the i_version up-to-date could have
performance drawbacks, so for now it's turned on only by a mount option.
We hope to do something better eventually.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Cc: Theodore Tso <tytso@mit.edu>
fs/nfsd/nfs3xdr.c
fs/nfsd/nfs4xdr.c
include/linux/nfsd/nfsfh.h
include/linux/nfsd/xdr4.h