On 12/1/20 4:12 PM, Linus Torvalds wrote: > On Tue, Dec 1, 2020 at 2:03 PM Eric Sandeen <sandeen@xxxxxxxxxxx> wrote: >> >> That's why I was keen to just add DAX unconditionally at this point, and if we want >> to invent/refine meanings for the mask, we can still try to do that? > > Oh Gods. Let's *not* make this some "random filesystem choice" where > now semantics depends on what some filesystem decided to do, and > different filesystems have very subtly different semantics. Well, I had hoped that refinement might start with the interface documentation, I'm certainly not suggesting every filesystem should go its own way. > This all screams "please keep this in the VFS layer" so that we at > least have _one_ place where these kinds of decisions are made. Making the "right decision" depends on what the mask actually means, I guess. Today we set a DAX attribute in statx which is not set in the mask. That seems clearly broken. We can either leave that as it is, set DAX in the mask for everyone in the VFS, or delegate that mask-setting task to the individual filesystems so that it reflects <something>, probably "can this inode ever be in dax mode?" I honestly don't care if we keep setting the attribute itself in the VFS; if that's the right thing to do, that's fine. (If so, it seems like IS_IMMUTABLE -> STATX_ATTR_IMMUTABLE etc could be moved there, too.) -Eric