That's fair -- and it didn't seem to hurt anything to have DIRSYNC at the moment, so I can drop this patch if we think its too much noise. I guess it was more of a reaction the filesystem implicitly setting mount flags which might override whatever the user intended. FWIW SB_SYNCHRONOUS did seem to have an effect on behavior (although I didn't specifically track down where) -- I noticed this because the problems Christian found seemed to go away if I mounted the filesystem with sync (which basically ended up overriding aspects of the cache configuration I guess). -eric On Sat, Feb 18, 2023 at 3:34 AM <asmadeus@xxxxxxxxxxxxx> wrote: > > Eric Van Hensbergen wrote on Sat, Feb 18, 2023 at 12:33:16AM +0000: > > These flags just add unnecessary extra operations. > > When 9p is run without cache, it inherently implements > > these options so we don't need them in the superblock > > (which ends up sending extraneous fsyncs, etc.). User > > can still request these options on mount, but we don't > > need to set them as default. > > Hm, I don't see where they'd add any operations -- if you have time > would you mind pointing me at some? > > As far as I can see, it's just about 'sync' or 'dirsync' in /proc/mounts > and the ST_SYNCHRONOUS statvfs flag; that looks harmless to me and it > looks more correct to keep to me. > > (Sorry, didn't take the time to actually try taking a trace; I've > checked the flag itself and the IS_SYNC/IS_DIRSYNC -> inode_needs_sync > wrappers and that only seems used by specific filesystems who'd care > about users setting the mount options, not the other way aorund.) > > -- > Dominique