linux_dsm_epyc7002/net/tipc
Ying Xue 4652edb70e tipc: fix connection refcount leak
When tipc_conn_sendmsg() calls tipc_conn_lookup() to query a
connection instance, its reference count value is increased if
it's found. But subsequently if it's found that the connection is
closed, the work of sending message is not queued into its server
send workqueue, and the connection reference count is not decreased.
This will cause a reference count leak. To reproduce this problem,
an application would need to open and closes topology server
connections with high intensity.

We fix this by immediately decrementing the connection reference
count if a send fails due to the connection being closed.

Signed-off-by: Ying Xue <ying.xue@windriver.com>
Acked-by: Erik Hugne <erik.hugne@ericsson.com>
Reviewed-by: Jon Maloy <jon.maloy@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-03-06 14:46:23 -05: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: make bearer set up in module insertion stage 2014-02-22 00:00:15 -05:00
bearer.h tipc: rename functions related to link failover and improve comments 2014-01-07 18:44:25 -05:00
config.c tipc: allow connection shutdown callback to be invoked in advance 2014-03-06 14:46:23 -05:00
config.h
core.c tipc: make bearer set up in module insertion stage 2014-02-22 00:00:15 -05:00
core.h tipc: make bearer set up in module insertion stage 2014-02-22 00:00:15 -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
handler.c
ib_media.c
Kconfig
link.c tipc: fix message corruption bug for deferred packets 2014-02-13 16:35:05 -05: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 all enabled flags from all tipc components 2014-02-22 00:00:15 -05:00
name_table.h
net.c
net.h
netlink.c tipc: remove all enabled flags from all tipc components 2014-02-22 00:00:15 -05:00
node_subscr.c
node_subscr.h
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
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
ref.c tipc: remove all enabled flags from all tipc components 2014-02-22 00:00:15 -05:00
ref.h
server.c tipc: fix connection refcount leak 2014-03-06 14:46:23 -05:00
server.h tipc: remove all enabled flags from all tipc components 2014-02-22 00:00:15 -05:00
socket.c tipc: remove all enabled flags from all tipc components 2014-02-22 00:00:15 -05:00
subscr.c tipc: allow connection shutdown callback to be invoked in advance 2014-03-06 14:46:23 -05:00
subscr.h
sysctl.c