Star64_linux/net/tipc
Jon Paul Maloy d39bbd445d tipc: move link input queue to tipc_node
At present, the link input queue and the name distributor receive
queues are fields aggregated in struct tipc_link. This is a hazard,
because a link might be deleted while a receiving socket still keeps
reference to one of the queues.

This commit fixes this bug. However, rather than adding yet another
reference counter to the critical data path, we move the two queues
to safe ground inside struct tipc_node, which is already protected, and
let the link code only handle references to the queues. This is also
in line with planned later changes in this area.

Reviewed-by: Ying Xue <ying.xue@windriver.com>
Signed-off-by: Jon Maloy <jon.maloy@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-07-20 20:41:14 -07:00
..
addr.c tipc: simplify include dependencies 2015-05-14 12:24:45 -04:00
addr.h tipc: simplify include dependencies 2015-05-14 12:24:45 -04:00
bcast.c tipc: introduce link entry structure to struct tipc_node 2015-07-20 20:41:14 -07:00
bcast.h tipc: add broadcast link window set/get to nl api 2015-05-09 16:40:02 -04:00
bearer.c tipc: simplify resetting and disabling of bearers 2015-05-14 12:24:45 -04:00
bearer.h tipc: simplify include dependencies 2015-05-14 12:24:45 -04:00
core.c tipc: rename functions defined in subscr.c 2015-05-04 15:04:00 -04:00
core.h tipc: simplify packet sequence number handling 2015-05-14 12:24:46 -04:00
discover.c tipc: move link creation from neighbor discoverer to node 2015-07-20 20:41:14 -07:00
discover.h
eth_media.c
ib_media.c
Kconfig
link.c tipc: move link input queue to tipc_node 2015-07-20 20:41:14 -07:00
link.h tipc: move link input queue to tipc_node 2015-07-20 20:41:14 -07:00
Makefile
msg.c tipc: add packet sequence number at instant of transmission 2015-05-14 12:24:46 -04:00
msg.h tipc: add packet sequence number at instant of transmission 2015-05-14 12:24:46 -04:00
name_distr.c tipc: introduce link entry structure to struct tipc_node 2015-07-20 20:41:14 -07:00
name_distr.h
name_table.c tipc: rename functions defined in subscr.c 2015-05-04 15:04:00 -04:00
name_table.h
net.c tipc: simplify include dependencies 2015-05-14 12:24:45 -04:00
net.h
netlink.c
netlink.h
netlink_compat.c tipc: send explicit not supported error in nl compat 2015-05-09 16:40:03 -04:00
node.c tipc: move link input queue to tipc_node 2015-07-20 20:41:14 -07:00
node.h tipc: move link input queue to tipc_node 2015-07-20 20:41:14 -07:00
server.c tipc: use sock_create_kern interface to create kernel socket 2015-05-14 13:39:33 -04:00
server.h
socket.c net/tipc: initialize security state for new connection socket 2015-07-08 16:08:23 -07:00
socket.h
subscr.c tipc: adjust locking policy of subscription 2015-05-04 15:04:01 -04:00
subscr.h tipc: rename functions defined in subscr.c 2015-05-04 15:04:00 -04:00
sysctl.c
udp_media.c udp_tunnel: Pass UDP socket down through udp_tunnel{, 6}_xmit_skb(). 2015-04-07 15:29:08 -04:00