On Tue, 2022-08-30 at 09:24 -0400, J. Bruce Fields wrote: > On Tue, Aug 30, 2022 at 07:40:02AM -0400, Jeff Layton wrote: > > Yes, saying only that it must be different is intentional. What we > > really want is for consumers to treat this as an opaque value for the > > most part [1]. Therefore an implementation based on hashing would > > conform to the spec, I'd think, as long as all of the relevant info is > > part of the hash. > > It'd conform, but it might not be as useful as an increasing value. > > E.g. a client can use that to work out which of a series of reordered > write replies is the most recent, and I seem to recall that can prevent > unnecessary invalidations in some cases. > That's a good point; the linux client does this. That said, NFSv4 has a way for the server to advertise its change attribute behavior [1] (though nfsd hasn't implemented this yet). We don't have a good way to do that in userland for now. This is another place where fsinfo() would have been nice to have. I think until we have something like that, we'd want to keep our promises to userland to a minimum. [1]: https://www.rfc-editor.org/rfc/rfc7862.html#section-12.2.3 . I guess I should look at plumbing this in for IS_I_VERSION inodes... -- Jeff Layton <jlayton@xxxxxxxxxx>