diff options
author | Eric Dumazet <eric.dumazet@gmail.com> | 2009-11-12 10:33:09 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-11-14 05:46:58 +0100 |
commit | 2c1409a0a2b88585ec0c03f1de0aafa178c56313 (patch) | |
tree | e9fc25badfb716e5368079535f548cc8e4b5576a /net/iucv | |
parent | ipv6: speedup inet6_dump_addr() (diff) | |
download | linux-2c1409a0a2b88585ec0c03f1de0aafa178c56313.tar.xz linux-2c1409a0a2b88585ec0c03f1de0aafa178c56313.zip |
inetpeer: Optimize inet_getid()
While investigating for network latencies, I found inet_getid() was a
contention point for some workloads, as inet_peer_idlock is shared
by all inet_getid() users regardless of peers.
One way to fix this is to make ip_id_count an atomic_t instead
of __u16, and use atomic_add_return().
In order to keep sizeof(struct inet_peer) = 64 on 64bit arches
tcp_ts_stamp is also converted to __u32 instead of "unsigned long".
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/iucv')
0 files changed, 0 insertions, 0 deletions