From: Eric Dumazet <dada1@cosmosbay.com>
To: Nagendra Tomar <tomer_iisc@yahoo.com>
Cc: Davide Libenzi <davidel@xmailserver.org>,
David Miller <davem@davemloft.net>,
netdev@vger.kernel.org,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 2.6.23-rc6 Resending] NETWORKING : Edge Triggered EPOLLOUT events get missed for TCP sockets
Date: Thu, 20 Sep 2007 08:11:48 +0200 [thread overview]
Message-ID: <46F20F24.1020900@cosmosbay.com> (raw)
In-Reply-To: <331107.71046.qm@web53704.mail.re2.yahoo.com>
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.
next prev parent reply other threads:[~2007-09-20 6:11 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-09-19 22:37 [PATCH 2.6.23-rc6 Resending] NETWORKING : Edge Triggered EPOLLOUT events get missed for TCP sockets Nagendra Tomar
2007-09-19 22:44 ` David Miller
2007-09-19 22:55 ` Nagendra Tomar
2007-09-19 23:10 ` David Miller
2007-09-19 23:32 ` Nagendra Tomar
2007-09-19 23:11 ` Davide Libenzi
2007-09-19 23:50 ` Nagendra Tomar
2007-09-20 5:43 ` Davide Libenzi
2007-09-20 6:11 ` Eric Dumazet [this message]
2007-09-20 8:02 ` Nagendra Tomar
2007-09-20 17:56 ` Davide Libenzi
2007-09-20 22:24 ` Nagendra Tomar
2007-09-20 17:42 ` Davide Libenzi
2007-09-20 22:09 ` Nagendra Tomar
2007-09-20 22:37 ` Davide Libenzi
2007-09-20 22:58 ` Nagendra Tomar
2007-09-21 17:45 ` Davide Libenzi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=46F20F24.1020900@cosmosbay.com \
--to=dada1@cosmosbay.com \
--cc=davem@davemloft.net \
--cc=davidel@xmailserver.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=tomer_iisc@yahoo.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).