[lkml]   [2012]   [Apr]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH] nextfd(2)
    On 04/01/2012 03:03 PM, H. Peter Anvin wrote:
    > On 04/01/2012 05:57 AM, Alexey Dobriyan wrote:
    >> * /proc/self/fd is unreliable:
    >> proc may be unconfigured or not mounted at expected place.
    >> Looking at /proc/self/fd requires opening directory
    >> which may not be available due to malicious rlimit drop or ENOMEM situations.
    >> Not opening directory is equivalent to dumb close(2) loop except slower.
    > This is really the motivation for this... the real question is how much
    > functionality is actually available in the system without /proc mounted,
    > and in particular if this particular subcase is worth optimizing ...
    > after all, if someone is maliciously setting rlimit, we can just abort
    > (if someone can set an rlimit they can also force an abort) or revert to
    > the slow path.

    A few more observations:

    - There is a huge backwards compatibility problem with this for a
    substantial transition period; using /proc/self/fd has worked for a very
    long time already.

    - Your nextfd() system call will require more system calls that the
    typical case for reading /proc/self/fd, because each getdents() system
    call handles multiple readdir() invocations.


    H. Peter Anvin, Intel Open Source Technology Center
    I work for Intel. I don't speak on their behalf.

     \ /
      Last update: 2012-04-02 00:15    [W:4.044 / U:0.192 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site