lkml.org 
[lkml]   [2007]   [Sep]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 2.6.23-rc6 Resending] NETWORKING : Edge Triggered EPOLLOUT events get missed for TCP sockets
    Nagendra Tomar a écrit :
    > --- Davide Libenzi <davidel@xmailserver.org> wrote:
    >
    >> On Wed, 19 Sep 2007, David Miller wrote:
    >>
    >>> From: Nagendra Tomar <tomer_iisc@yahoo.com>
    >>> Date: Wed, 19 Sep 2007 15:37:09 -0700 (PDT)
    >>>
    >>>> With the SOCK_NOSPACE check in tcp_check_space(), this epoll_wait call will
    >>>> not return, even when the incoming acks free the buffers.
    >>>> Note that this patch assumes that the SOCK_NOSPACE check in
    >>>> tcp_check_space is a trivial optimization which can be safely removed.
    >>> I already replied to your patch posting explaining that whatever is
    >>> not setting SOCK_NOSPACE should be fixed instead.
    >>>
    >>> Please address that, thanks.
    >> You're not planning of putting the notion of a SOCK_NOSPACE bit inside a
    >> completely device-unaware interface like epoll, I hope?
    >>
    >
    > Definitely not !
    >
    > The point is that the "tcp write space available"
    > wakeup does not get called if SOCK_NOSPACE bit is not set. This was
    > fine when the wakeup was merely a wakeup (since SOCK_NOSPACE bit
    > indicated that someone really cared abt the wakeup). Now after the
    > introduction of callback'ed wakeups, we might have some work to
    > do inside the callback even if there is nobody interested in the wakeup
    > at that point of time.
    >
    > In this particular case the ep_poll_callback is not getting called and
    > hence the socket fd is not getting added to the ready list.
    >

    Does it means that with your patch each ACK on a ET managed socket will
    trigger an epoll event ?

    Maybe your very sensitive high throuput appication needs to set a flag or
    something at socket level to ask for such a behavior.

    The default should stay as is. That is an event should be sent only if someone
    cared about the wakeup.

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-09-20 08:15    [W:0.033 / U:31.680 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site