Thread (186 messages) 186 messages, 11 authors, 2009-02-06

Re: [PATCH] tcp: splice as many packets as possible at once

From: Eric Dumazet <hidden>
Date: 2009-01-13 23:38:23
Also in: lkml

David Miller a écrit :
From: Eric Dumazet <redacted>
Date: Fri, 09 Jan 2009 08:28:09 +0100
quoted
If the application uses setsockopt(sock, SOL_SOCKET, SO_RCVLOWAT,
[32768], 4), it would be good if kernel was smart enough and could
reduce number of wakeups.
Right, and as I pointed out in previous replies the problem is
that splice() receive in TCP doesn't check the low water mark
at all.
Yes I understand, but if splice() is running, wakeup occured, and
no need to check if the wakeup was good or not... just proceed and
consume some skb, since we already were awaken.

Then, an application might setup a high SO_RCVLOWAT, but want to splice()
only few bytes, so RCVLOWAT is only a hint for the thing that perform the
wakeup, not for the consumer.

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help