Subject: Re: [RFC 2/2] udp: udp_lib_get_port start at a different bucket on different processors

From: Eric Dumazet <[email-masked]>
Date: Thu, 17 Dec 2009 15:09:11 +0100

Le 16/12/2009 20:24, Lucian Adrian Grijincu a écrit :
> 
> On SMP, when ports are not allocated randomly, using the same starting
> port on all processors will lead to bad performance as all processors
> will try to get the same hashbucket spinlock: only one will succeed,
> the rest will spin madly.
> 
> We solve this problem by making each processor start searching from a
> different port. To not skip possibly valid port ranges we renormalize
> the hint value too.
> 
> Signed-off-by: Lucian Adrian Grijincu <[email-masked]>
> ---
>  net/ipv4/udp.c |   12 +++++++++---
>  1 files changed, 9 insertions(+), 3 deletions(-)
> 
> 

This makes no sense. You correct a bad performance issue bringed by your previous patch ?

Please submit one patch, with no performance regression.

I suggest you use a per_cpu hint if you really want to be fast...

Thanks