Re: SO_REUSEPORT - can it be done in kernel?
From: Herbert Xu <herbert@gondor.apana.org.au>
Date: 2011-02-28 04:26:34
On Sun, Feb 27, 2011 at 07:45:55PM -0800, Tom Herbert wrote:
That sounds promising, but receive side will still have problems. There is lock contention on the queue as well as cache line bouncing on the sock structures. Also multiple threads sleeping on same socket typically leads to asymmetric load across the threads (and degenerative cases where receiving thread is woken up and other threads have already processed all the packets). TCP listener threads suffer from these same problems.
IOW this is something that we have to solve anyway. I'm just being overly cautious here because user-space API changes are something that we should not enter into lightly. If this patch was completely internal to the kernel, then I would have much less of an objection as we can always revert/change it later on. With a user-space API we don't have that flexibility. Thanks, -- Email: Herbert Xu [off-list ref] Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt