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

NeilBrown
2022-09-14T22:45:46Z

On Wed, 14 Sep 2022, Jeff Layton wrote:
> On Wed, 2022-09-14 at 09:24 +1000, NeilBrown wrote:
> > On Wed, 14 Sep 2022, Jeff Layton wrote:
> > >
> > > At that point, bumping i_version both before and after makes a bit more
> > > sense, since it better ensures that a change will be noticed, whether
> > > the related read op comes before or after the statx.
> >
> > How does bumping it before make any sense at all? Maybe it wouldn't
> > hurt much, but how does it help anyone at all?
> >
>
> My assumption (maybe wrong) was that timestamp updates were done before
> the actual write by design. Does doing it before the write make increase
> the chances that the inode metadata writeout will get done in the same
> physical I/O as the data write? IDK, just speculating here.

When the code was written, the inode semaphore (before mutexes) was held
over the whole thing, and timestamp resolution was 1 second. So
ordering didn't really matter. Since then locking has bee reduced and
precision increased but no-one saw any need to fix the ordering. I
think that is fine for timestamps.

But i_version is about absolute precision, so we need to think carefully
about what meets our needs.

>
> If there's no benefit to doing it before then we should just move it
> afterward.

Great!
Thanks,
NeilBrown