On 11/10/2017 10:04 PM, Fu, Rodney wrote: >> No. If you want new flags bits, make a public proposal. Maybe some other >> filesystem would also benefit from them. > > Ah, I see what you mean now, thanks. > > I would like to propose O_CONCURRENT_WRITE as a new open flag. It is > currently used in the Panasas filesystem (panfs) and defined with value: > > #define O_CONCURRENT_WRITE 020000000000 > > This flag has been provided by panfs to HPC users via the mpich package for > well over a decade. See: > > https://github.com/pmodels/mpich/blob/master/src/mpi/romio/adio/ad_panfs/ad_panfs_open6.c#L344 > > O_CONCURRENT_WRITE indicates to the filesystem that the application doing the > open is participating in a coordinated distributed manner with other such > applications, possibly running on different hosts. This allows the panfs > filesystem to delegate some of the cache coherency responsibilities to the > application, improving performance. > > The reason this flag is used on open as opposed to having a post-open ioctl or > fcntl SETFL is to allow panfs to catch and reject opens by applications that > attempt to access files that have already been opened by applications that have > set O_CONCURRENT_WRITE. Hmm, while I see why adding this flag is convenient, it still should be possible to have an ioctl to open the file and to set the flag? If a wrong panfs-inode flag is set, failing either the normal- or the ioctl-open would also work. Cheers, Bernd