[lkml]   [2008]   [May]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [RFC] correct flags to f_mode conversion in __dentry_open
    On Wed, 21 May 2008, Michael Kerrisk wrote:

    > Christoph Hellwig wrote:
    > > On Sat, Mar 15, 2008 at 05:59:52PM -0400, Alan Cox wrote:
    > >>> does 11 really mean and should it really always be mapped to (FMODE_READ
    > >>> | FMODE_WRITE) or should it continue to get mapped to 'no permission?'
    > >> We've always mapped 3 to "no permission" to read or write. It's a linuxism
    > >
    > > I've tripped over this recently aswell. It would for sure be useful
    > > to add a sumbolic O_FOO constant for this magic value '3' and document
    > > it in the manpage.
    > Late follow-up to this thread
    > (
    > I propose to add the following text to the open(2) man page.
    > Unlike the other values that can be specified in flags,
    > the access mode values O_RDONLY, O_WRONLY, and O_RDWR, do
    > not specify individual bits. Rather, they define the low
    > order two bits of flags, and are defined respectively as
    > 0, 1, and 2. In other words, the combination O_RDONLY |
    > O_WRONLY is a logical error, and certainly does not have
    > the same meaning as O_RDWR. Linux reserves the special,
    > non-standard access mode 3 (binary 11) in flags to mean:
    > check for read and write permission on the file and
    > return a descriptor that can't be used for reading or
    > writing. This non-standard access mode is used by some
    > Linux drivers to return a descriptor that is only to be
    > used for device-specific ioctl(2) operations.
    > Seem okay?

    Looks good to me. We definitely need this documented.

    - James
    James Morris

     \ /
      Last update: 2008-05-22 04:13    [W:0.021 / U:35.004 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site