On Tue, 2022-08-23 at 12:01 +0200, Florian Weimer wrote: > * Jeff Layton: > > > From: Jeff Layton <jlayton@xxxxxxxxxx> > > > > The NFS server and IMA both rely heavily on the i_version counter, but > > it's largely invisible to userland, which makes it difficult to test its > > behavior. This value would also be of use to userland NFS servers, and > > other applications that want a reliable way to know if there was an > > explicit change to an inode since they last checked. > > > > Claim one of the spare fields in struct statx to hold a 64-bit inode > > version attribute. This value must change with any explicit, observeable > > metadata or data change. Note that atime updates are excluded from this, > > unless it is due to an explicit change via utimes or similar mechanism. > > > > When statx requests this attribute on an IS_I_VERSION inode, do an > > inode_query_iversion and fill the result in the field. Also, update the > > test-statx.c program to display the inode version and the mountid. > > Will the version survive reboots? Is it stored on disks? Can backup > tools (and others) use this to check if the file has changed since the > last time the version has been observed? > The answer to all of those question is "yes". -- Jeff Layton <jlayton@xxxxxxxxxx>