On Sun, Nov 07, 2021 at 04:50:21PM -0600, Steve French wrote:
That is interesting ... and weird. Why would POSIX allow doing something write related (fsync) without write permission?
It's not POSIX, it's Linux :-). It also operates on meta-data, so if the buffer cache has any pending changes on a read-only fd, then fsync(fd) will flush them. man 2 fsync. .. As well as flushing the file data, fsync() also flushes the metadata information associated with the file (see inode(7)). I think cifsfs needs to keep track of the file modes and silently return success on a read-only fd even if mounted without nostrictsync.