diff options
author | Eric Dumazet <eric.dumazet@gmail.com> | 2009-11-08 13:17:58 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-11-09 07:53:06 +0300 |
commit | 512615b6b843ff3ff5ad583f34c39b3f302f5f26 (patch) | |
tree | 7420705a314bc691bc478225148935dc67f71904 /lib/locking-selftest-spin-softirq.h | |
parent | d4cada4ae1c012815f95fa507eb86a0ae9d607d7 (diff) | |
download | linux-512615b6b843ff3ff5ad583f34c39b3f302f5f26.tar.xz |
udp: secondary hash on (local port, local address)
Extends udp_table to contain a secondary hash table.
socket anchor for this second hash is free, because UDP
doesnt use skc_bind_node : We define an union to hold
both skc_bind_node & a new hlist_nulls_node udp_portaddr_node
udp_lib_get_port() inserts sockets into second hash chain
(additional cost of one atomic op)
udp_lib_unhash() deletes socket from second hash chain
(additional cost of one atomic op)
Note : No spinlock lockdep annotation is needed, because
lock for the secondary hash chain is always get after
lock for primary hash chain.
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'lib/locking-selftest-spin-softirq.h')
0 files changed, 0 insertions, 0 deletions