Re: select()/socket has problems under 2.2.x.

David Miller (davem@twiddle.net)
Fri, 5 Mar 1999 02:32:28 -0800


Date: Sat, 13 Feb 1999 02:35:27 +0100 (CET)
From: Andrea Arcangeli <andrea@e-mind.com>

[ Yes, I know, I'm miles behind on TCP problem reports.
Please bear with me... ]

On Fri, 12 Feb 1999, Frederick (Rick) A Niles wrote:

>setsockopt getsockopt select() works?
>--------------------------------------------
> 1008 2016 No
> 1009 2018 Yes

You may give a try at this my patch I've done now (the first part is a
jiffy wrap fix I catched today and is unrelated).

Andrea, I've applied your jiffies fix, that is correct.

I'm curious about the other part. Changing prune_queue()'s behavior
is not such a good idea, if the effect we want to change is in the
caller.

For example, if we change tcp_data() to do the wakeup even if
prune_queue() returns < 0 solve the select problem here?

If so just send me a patch which introduces a local variable 'ret' for
the return value, and a goto to the wakeup code if prune_queue() says
to toss the packet, and I'll put it in as this seems to be a safe
change.

Later,
David S. Miller
davem@redhat.com

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