On Sun, 11 Sep 2022, Al Viro wrote: > On Thu, Sep 08, 2022 at 10:40:43AM +1000, NeilBrown wrote: > > > We do hold i_rwsem today. I'm working on changing that. Preserving > > atomic directory changeinfo will be a challenge. The only mechanism I > > can think if is to pass a "u64*" to all the directory modification ops, > > and they fill in the version number at the point where it is incremented > > (inode_maybe_inc_iversion_return()). The (nfsd) caller assumes that > > "before" was one less than "after". If you don't want to internally > > require single increments, then you would need to pass a 'u64 [2]' to > > get two iversions back. > > Are you serious? What kind of boilerplate would that inflict on the > filesystems not, er, opting in for that... scalability improvement > experiment? > Why would you think there would be any boiler plate? Only filesystems that opt in would need to do anything, and only when the caller asked (by passing a non-NULL array pointer). NeilBrown