diff options
| author | Mihai Maruseac <[email protected]> | 2011-10-20 20:45:10 +0000 |
|---|---|---|
| committer | David S. Miller <[email protected]> | 2011-10-21 06:54:38 +0000 |
| commit | f04565ddf52e401880f8ba51de0dff8ba51c99fd (patch) | |
| tree | 720ebd86cb3012319023389a54ae7152073d6bdb /net/ipv4/tcp_ipv4.c | |
| parent | macvtap: Fix the minor device number allocation (diff) | |
| download | kernel-f04565ddf52e401880f8ba51de0dff8ba51c99fd.tar.gz kernel-f04565ddf52e401880f8ba51de0dff8ba51c99fd.zip | |
dev: use name hash for dev_seq_ops
Instead of using the dev->next chain and trying to resync at each call to
dev_seq_start, use the name hash, keeping the bucket and the offset in
seq->private field.
Tests revealed the following results for ifconfig > /dev/null
* 1000 interfaces:
* 0.114s without patch
* 0.089s with patch
* 3000 interfaces:
* 0.489s without patch
* 0.110s with patch
* 5000 interfaces:
* 1.363s without patch
* 0.250s with patch
* 128000 interfaces (other setup):
* ~100s without patch
* ~30s with patch
Signed-off-by: Mihai Maruseac <[email protected]>
Signed-off-by: Eric Dumazet <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'net/ipv4/tcp_ipv4.c')
0 files changed, 0 insertions, 0 deletions
