On Wed, 2022-07-20 at 12:29 -0400, Benjamin Coddington wrote: > On 20 Jul 2022, at 12:15, Jeff Layton wrote: > > > On Wed, 2022-07-20 at 11:56 -0400, Benjamin Coddington wrote: > > > On 20 Jul 2022, at 10:38, Jeff Layton wrote: > > > > On Wed, 2022-07-20 at 16:15 +0200, Lukas Czerner wrote: > > > > > > > > > > Is there a different way I am not seeing? > > > > > > > > > > > > > Right, implementing this is the difficult bit actually since this uses a > > > > MS_* flag. If we do make this the default, we'd definitely want to > > > > continue allowing "-o noiversion" to disable it. > > > > > > > > Could we just reverse the default in libmount? It might cause this to > > > > suddenly be enabled in some deployments, but in most cases, people > > > > wouldn't even notice and they could still specify -o noiversion to turn > > > > it off. > > > > > > > > Another idea would be to introduce new mount options for this, but > > > > that's kind of nasty from a UI standpoint. > > > > > > Is it safe to set SB_I_VERSION at export time? If so, export_operations > > > could grow an ->enable_iversion(). > > > > > > > That sounds like it might be problematic. > > > > Consider the case where a NFSv4 client has cached file data and the > > change attribute for the file. Server then reboots, but before the > > export happens a local user makes a change to the file and it doesn't > > update the i_version. > > Nfsd currently uses both ctime and i_version if its available, I'd expect > that eliminates this case. > Good point, that probably would. Still, I'd rather we just enable this wholesale if we can get away with it. There's still some interest in exposing i_version to userland via statx or the like, so I'd rather not assume that only nfsd will care about it. -- Jeff Layton <jlayton@xxxxxxxxxx>