On Thu, Feb 20, 2003 at 08:24:38PM -0800, David S. Miller wrote: > From: Andi Kleen <ak@suse.de> > Date: Thu, 20 Feb 2003 10:34:22 +0100 > > On Thu, Feb 20, 2003 at 01:20:43AM -0800, Simon Kirby wrote: > > Hmm...and this is considered desired behavior? It seems like an odd way > > of handling packets intended to test latency and reliability. :) > > IP is best-effort. Dropping packets in odd cases to make locking simpler > is not unreasonable. Would you prefer an slower kernel? > > True. > > But this is a quality of implementation issue and I doubt the kernel > would be slower if we fixed this silly behavior. > > Frankly, the locking is due to lazyness, rather than a specific design > decision. So let's fix it. For icmp_xmit_lock it can be only done in a limited fashion - you are always restricted by the buffer size of the ICMP socket. Also I don't know how to lock the socket from BH context nicely - the only simple way probably is the trick from the retransmit timer to just try again in a jiffie, but could have nasty queueing up under high load. Fixing the error drop behaviour of TCP will be somewhat nasty too. In both cases you'll need a retry timer (unreliable) or an dedicated ICMP backlog (complicated) -Andi - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html