2013/2/28 Richard Sharpe <realrichardsharpe@xxxxxxxxx>: > On Thu, Feb 28, 2013 at 7:25 AM, Pavel Shilovsky <piastry@xxxxxxxxxxx> wrote: >> This patch adds 4 flags: >> 1) O_DENYREAD that doesn't permit read access, >> 2) O_DENYWRITE that doesn't permit write access, >> 3) O_DENYDELETE that doesn't permit delete or rename, >> 4) O_DENYMAND that enables O_DENY* flags checks. >> >> Network filesystems CIFS, SMB2.0, SMB3.0 and NFSv4 have such flags - >> this change can benefit cifs and nfs modules as well as Samba and >> NFS file servers. These flags are only take affect for opens with >> O_DENYMAND flags - there is no impact on native Linux opens. > > Isn't there a problem of races here? What if another person already > has the file open for WRITE and the CIFS server needs to open it with > DENY WRITE? If another person already has the file open for WRITE, CIFS server can successfully open it with DENYWRITE, because this DENY* behavior affects only DENYMAND opens. > > What happens if the CIFS server opens the file, but before it can > issue the DENY WRITE someone else opens it for write? The same things - CIFS server will open and lock the file without problems. -- Best regards, Pavel Shilovsky. -- To unsubscribe from this list: send the line "unsubscribe linux-cifs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html