linux/net/tipc
Ying Xue 6398e23cdb tipc: standardize accept routine
Comparing the behaviour of how to wait for events in TIPC accept()
with other stacks, the TIPC implementation might be perceived as
different, and sometimes even incorrect. As sk_sleep() and
sk->sk_receive_queue variables associated with socket are not
protected by socket lock, the process of calling accept() may be
woken up improperly or sometimes cannot be woken up at all. After
standardizing it with inet_csk_wait_for_connect routine, we can
get benefits including: avoiding 'thundering herd' phenomenon,
adding a timeout mechanism for accept(), coping with a pending
signal, and having sk_sleep() and sk->sk_receive_queue being
always protected within socket lock scope and so on.

Signed-off-by: Ying Xue <ying.xue@windriver.com>
Reviewed-by: Jon Maloy <jon.maloy@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-01-16 19:10:34 -08:00
..
addr.c
addr.h
bcast.c tipc: make link start event synchronous 2014-01-07 18:44:26 -05:00
bcast.h
bearer.c tipc: spelling fixes 2014-01-14 18:18:22 -08:00
bearer.h tipc: rename functions related to link failover and improve comments 2014-01-07 18:44:25 -05:00
config.c
config.h
core.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-12-18 16:42:06 -05:00
core.h tipc: Use <linux/uaccess.h> instead of <asm/uaccess.h> 2013-12-16 12:48:35 -05:00
discover.c tipc: introduce new spinlock to protect struct link_req 2014-01-07 18:44:25 -05:00
discover.h
eth_media.c tipc: eliminate code duplication in media layer 2013-12-11 00:17:43 -05:00
handler.c
ib_media.c tipc: eliminate code duplication in media layer 2013-12-11 00:17:43 -05:00
Kconfig
link.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-01-14 14:42:42 -08:00
link.h tipc: make link start event synchronous 2014-01-07 18:44:26 -05:00
log.c
Makefile
msg.c
msg.h
name_distr.c
name_distr.h
name_table.c tipc: remove unnecessary variables and conditions 2013-12-16 12:48:35 -05:00
name_table.h
net.c
net.h
netlink.c
node.c tipc: rename functions related to link failover and improve comments 2014-01-07 18:44:25 -05:00
node.h tipc: remove 'has_redundant_link' flag from STATE link protocol messages 2014-01-07 18:44:25 -05:00
node_subscr.c
node_subscr.h
port.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-01-06 17:37:45 -05:00
port.h tipc: fix deadlock during socket release 2013-12-29 22:24:07 -05:00
ref.c
ref.h
server.c tipc: spelling fixes 2014-01-14 18:18:22 -08:00
server.h
socket.c tipc: standardize accept routine 2014-01-16 19:10:34 -08:00
subscr.c tipc: spelling fixes 2014-01-14 18:18:22 -08:00
subscr.h
sysctl.c