Re: [man-pages RFC PATCH v4] statx, inode: document the new STATX_INO_VERSION field

From: J. Bruce Fields
Date: Wed Sep 07 2022 - 08:20:47 EST


On Wed, Sep 07, 2022 at 09:37:33PM +1000, NeilBrown wrote:
> On Wed, 07 Sep 2022, Jeff Layton wrote:
> > +The change to \fIstatx.stx_ino_version\fP is not atomic with respect to the
> > +other changes in the inode. On a write, for instance, the i_version it usually
> > +incremented before the data is copied into the pagecache. Therefore it is
> > +possible to see a new i_version value while a read still shows the old data.
>
> Doesn't that make the value useless? Surely the change number must
> change no sooner than the change itself is visible, otherwise stale data
> could be cached indefinitely.

For the purposes of NFS close-to-open, I guess all we need is for the
change attribute increment to happen sometime between the open and the
close.

But, yes, it'd seem a lot more useful if it was guaranteed to happen
after. (Or before and after both--extraneous increments aren't a big
problem here.)

--b.

>
> If currently implementations behave this way, surely they are broken.
>
> NeilBrown