aha/net
Eric Dumazet 512615b6b8 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>
2009-11-08 20:53:06 -08:00
..
9p virtio: add virtio IDs file 2009-09-23 22:26:32 +09:30
802 net: remove COMPAT_NET_DEV_OPS 2009-05-25 01:53:53 -07:00
8021q net: Support specifying the network namespace upon device creation. 2009-11-08 00:53:51 -08:00
appletalk net/appletalk: using compat_ptr needs inclusion of linux/compat.h 2009-11-08 20:41:03 -08:00
atm net: pass kern to net_proto_family create function 2009-11-05 22:18:14 -08:00
ax25 net: pass kern to net_proto_family create function 2009-11-05 22:18:14 -08:00
bluetooth net: check kern before calling security subsystem 2009-11-05 22:18:18 -08:00
bridge Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-11-06 00:55:55 -08:00
can net: pass kern to net_proto_family create function 2009-11-05 22:18:14 -08:00
core net: Support specifying the network namespace upon device creation. 2009-11-08 00:53:51 -08:00
dcb net: fix double skb free in dcbnl 2009-09-26 20:16:15 -07:00
dccp net: drop capability from protocol definitions 2009-11-05 21:40:17 -08:00
decnet Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-11-06 00:55:55 -08:00
dsa netdev: convert pseudo-devices to netdev_tx_t 2009-09-01 01:13:07 -07:00
econet net: pass kern to net_proto_family create function 2009-11-05 22:18:14 -08:00
ethernet net: remove COMPAT_NET_DEV_OPS 2009-05-25 01:53:53 -07:00
ieee802154 Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/lowpan/lowpan 2009-11-06 17:57:51 -08:00
ipv4 udp: secondary hash on (local port, local address) 2009-11-08 20:53:06 -08:00
ipv6 udp: split sk_hash into two u16 hashes 2009-11-08 20:53:05 -08:00
ipx net/ipx: push down BKL into a ipx_dgram_ops 2009-11-07 00:46:39 -08:00
irda net/irda: push BKL into proto_ops 2009-11-07 00:46:39 -08:00
iucv net: pass kern to net_proto_family create function 2009-11-05 22:18:14 -08:00
key net: pass kern to net_proto_family create function 2009-11-05 22:18:14 -08:00
lapb net: remove NET_RX_BAD and NET_RX_CN* defines 2009-07-05 19:15:35 -07:00
llc net: pass kern to net_proto_family create function 2009-11-05 22:18:14 -08:00
mac80211 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-11-06 00:55:55 -08:00
netfilter Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-11-06 00:55:55 -08:00
netlabel netlabel: remove dev_put() calls 2009-11-05 22:34:18 -08:00
netlink net: pass kern to net_proto_family create function 2009-11-05 22:18:14 -08:00
netrom net: pass kern to net_proto_family create function 2009-11-05 22:18:14 -08:00
packet net: pass kern to net_proto_family create function 2009-11-05 22:18:14 -08:00
phonet net: pass kern to net_proto_family create function 2009-11-05 22:18:14 -08:00
rds net: pass kern to net_proto_family create function 2009-11-05 22:18:14 -08:00
rfkill headers: remove sched.h from poll.h 2009-10-04 15:05:10 -07:00
rose Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-11-06 00:55:55 -08:00
rxrpc net: pass kern to net_proto_family create function 2009-11-05 22:18:14 -08:00
sched net_cls: Use __dev_get_by_index() 2009-11-05 22:34:21 -08:00
sctp sctp: ipv6: avoid touching device refcount 2009-11-05 22:34:21 -08:00
sunrpc Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-11-06 00:55:55 -08:00
tipc net: pass kern to net_proto_family create function 2009-11-05 22:18:14 -08:00
unix net: pass kern to net_proto_family create function 2009-11-05 22:18:14 -08:00
wanrouter headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
wimax wimax: allow WIMAX_RF_QUERY calls when state is still uninitialized 2009-10-19 15:56:14 +09:00
wireless Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-11-06 00:55:55 -08:00
x25 net/x25: push BKL usage into x25_proto 2009-11-07 00:46:40 -08:00
xfrm xfrm: remove skb_icv_walk 2009-10-18 21:32:01 -07:00
compat.c net: Cleanup redundant tests on unsigned 2009-10-29 01:39:54 -07:00
Kconfig net/compat/wext: send different messages to compat tasks 2009-07-15 08:53:39 -07:00
Makefile net: remove redundant sched/ in net/Makefile 2009-07-12 20:11:14 -07:00
nonet.c
socket.c net, compat_ioctl: handle more ioctls correctly 2009-11-06 23:11:15 -08:00
sysctl_net.c net: sysctl_net - use net_eq to compare nets 2009-03-16 16:23:30 +01:00
TUNABLE