lkml.org 
[lkml]   [2002]   [Oct]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: epoll (was Re: [PATCH] async poll for 2.5)
    Davide Libenzi wrote:

    >>Nonsense. If you wish to make such a claim, you need to provide an
    >>example of a situation in which it won't work.
    >>
    >>
    >
    >Your welcome. This is your code :
    >
    >for (;;) {
    > fd = event_wait(...);
    > while (do_io(fd) != EAGAIN);
    >}
    >
    >If the I/O space is not exhausted when you call event_wait(...); you'll
    >never receive the event because you'll be waiting a 0->1 transaction
    >without bringing the signal to 0 ( I/O space exhausted ).
    >
    My code above does exhaust the I/O space.

    > That one is a
    >typical use of poll() - select() - /dev/poll and you showed pretty clearly
    >that you do not seem to understand edge triggered event APIs. If you code
    >your I/O function like :
    >
    >int my_io(...) {
    >
    > if (event_wait(...))
    > do_io(...);
    >
    >}
    >
    This is not how my example is coded.

    while (do_io(...) != EAGAIN);

    is not equivalent to:

    do_io(...);

    The former is guaranteed to exhaust the I/O space, the latter is not.

    You're spouting nonsense.

    [unhandled content-type:application/x-pkcs7-signature]
    \
     
     \ /
      Last update: 2005-03-22 13:30    [W:0.040 / U:0.092 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site