On Sun, Nov 24, 2024 at 02:10:30PM -0800, Linus Torvalds wrote: > I *do* think that we could perhaps extend (and rename) the > inode->i_size_seqcount to just cover all of the core inode metadata > stuff. That would bring ->i_size_seqcount to 64bit architectures and potentially extend the time it's being held quite a bit even on 32bit... > And then - exactly like we already do in practice with > inode->i_size_seqcount - some places might just choose to ignore it > anyway. > > But at least using a sequence count shouldn't make things like stat() > any worse in practice. > > That said, I don't think this is a real problem in practice. The race > window is too small, and the race effects are too insignificant. > > Yes, getting the nanoseconds out of sync with the seconds is a bug, > but when it effectively never happens, and when it *does* happen it > likely has no real downsides, I suspect it's also not something we > should worry over-much about. > > So I mention the "rename and extend i_size_seqcount" as a solution > that I suspect might be acceptable if somebody has the motivation and > energy, but honestly I also think "nobody can be bothered" is > acceptable in practice. *nod*