Re: [PATCH 4/5] udp: Add lockless transmit path

Eric Dumazet
2011-03-01T05:30:46Z

Le lundi 28 février 2011 à 19:41 +0800, Herbert Xu a écrit :
> udp: Add lockless transmit path
>
> The UDP transmit path has been running under the socket lock
> for a long time because of the corking feature. This means that
> transmitting to the same socket in multiple threads does not
> scale at all.
>
> However, as most users don't actually use corking, the locking
> can be removed in the common case.
>
> This patch creates a lockless fast path where corking is not used.
>
> Please note that this does create a slight inaccuracy in the
> enforcement of socket send buffer limits. In particular, we
> may exceed the socket limit by up to (number of CPUs) * (packet
> size) because of the way the limit is computed.
>
> As the primary purpose of socket buffers is to indicate congestion,
> this should not be a great problem for now.
>
> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
> ---

So far I found no obvious problem, and got pretty impressive results.

Acked-by: Eric Dumazet <eric.dumazet@gmail.com>