lkml.org 
[lkml]   [2008]   [Oct]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Honoring SO_RCVLOWAT in proto_ops.poll methods
On Sun, Oct 05, 2008 at 03:30:59PM -0700, David Miller wrote:
> From: swivel@shells.gnugeneration.com
> Date: Sun, 5 Oct 2008 16:45:57 -0500
>
> > I will be testing this patch today. At a glance it appears with this
> > patch we're still not taking rcvlowat into consideration in recv()
> > with MSG_PEEK flag set. This should probably also be corrected, as
> > mentioned in the thread previously.
>
> Yes, I remember you mentioning that.
>
> I'll look into it.


Looks like the RCVLOWAT patch breaks the tcp poll logic in the normal
case.

I didn't have a chance to scrutinize the changes but with the patch
applied simple things like a telnet to 127.0.0.1:80 exit immediately
with "Connection closed by foreign host".

In strace of the above telnet failure I see recv() returning EAGAIN
before exiting. Telnet expected a select() to block until data was
available and didn't expect recv() to find nothing available when the
select() reported there was something. Select() was no longer behaving
properly on ipv4 tcp sockets.

Regards,
Vito Caputo


\
 
 \ /
  Last update: 2008-10-06 07:19    [W:0.138 / U:1.120 seconds]
©2003-2014 Jasper Spaans. Advertise on this site