Subject: Re: [PATCH] ipv6/addrconf: speedup /proc/net/if_inet6 filling

From: Stephen Hemminger <[email-masked]>
Date: Wed, 4 Jan 2012 08:22:00 -0800

On Wed,  4 Jan 2012 11:31:35 +0200
Mihai Maruseac <[email-masked]> wrote:

> This ensures a linear behaviour when filling /proc/net/if_inet6 thus making
> ifconfig run really fast on IPv6 only addresses. In fact, with this patch and
> the IPv4 one sent a while ago, ifconfig will run in linear time regardless of
> address type.
> 
> IPv4 related patch: f04565ddf52e401880f8ba51de0dff8ba51c99fd
> 	 dev: use name hash for dev_seq_ops
> 	 ...
> 
> Some statistics (running ifconfig > /dev/null on a different setup):
> 
> iface count / IPv6 no-patch time / IPv6 patched time / IPv4 time
> ----------------------------------------------------------------
>       6250  |       0.23 s       |      0.13 s       |  0.11 s
>      12500  |       0.62 s       |      0.28 s       |  0.22 s
>      25000  |       2.91 s       |      0.57 s       |  0.46 s
>      50000  |      11.37 s       |      1.21 s       |  0.94 s
>     128000  |      86.78 s       |      3.05 s       |  2.54 s
> 
> Signed-off-by: Mihai Maruseac <[email-masked]>
> Cc: Daniel Baluta <[email-masked]>
> ---
>  net/ipv6/addrconf.c |   43 ++++++++++++++++++++++++++++---------------
>  1 files changed, 28 insertions(+), 15 deletions(-)
> 

What about netlink? Also ifconfig is really considered deprecated,
especially for ipv6 usage.