ipv6: speedup inet6_dump_addr()
authorEric Dumazet <eric.dumazet@gmail.com>
Thu, 12 Nov 2009 04:11:50 +0000 (04:11 +0000)
committerDavid S. Miller <davem@davemloft.net>
Sat, 14 Nov 2009 04:46:57 +0000 (20:46 -0800)
commit234b27c3fd58fc0e15c04dd0fbf4337fac9c2a06
treeb7cc69200bee85872e2b8bf7fa93d2c8b519de2e
parent5256f2ef3a40d784b8369035bff3f4dc637a9801
ipv6: speedup inet6_dump_addr()

When handling large number of netdevices, inet6_dump_addr()
is very slow because it has O(N^2) complexity.

Instead of scanning one single list, we can use the NETDEV_HASHENTRIES
sub lists of the dev_index hash table, and RCU lookups.

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/addrconf.c