Re: [TCP]: rcvbuf lock when tcp_moderate_rcvbuf enabled

From: John Heffner
Date: Thu Mar 23 2006 - 10:57:40 EST


On Thursday 23 March 2006 04:04, Dan Aloni wrote:
> Hello,
>
> Below, I've forwarded change from 2.6.16 which I think may causes
> problems for applications that use setsockopt with SO_RCVBUF. We are
> using an implementation of an iSCSI target and according to network
> sniffs it seems that during data transfer the receive window
> unjustifyingly shrinks to a very low size (180 bytes). I can guess
> that the code below indirectly affects the receive window size, but
> I'm not sure how it the logic works here, a clarification could be
> helpful.
>
> It's worth to mention that we have sysctl_tcp_moderate_rcvbuf=1, but
> I don't think it should interfere with applications that request to
> have a fixed receive buffer by the means of setsockopt(). I can also
> tell by experiment that reverting the change below makes the problem
> go away.

It shouldn't, but it used to. That's exactly what this patch changes (making
tcp_moderate_rcvbuf *not* override the application's requested buffer size).
Is it possible the application isn't asking for enough buffer space, and that
the kernel was just automatically helping it before this patch went in?

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