Re: [PATCH v3 1/7] fcntl: Introduce new O_DENY* open flags

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux