Thread (2 messages) 2 messages, 2 authors, 2017-03-01

Re: [PATCH net] rxrpc: Fix deadlock between call creation and sendmsg/recvmsg

From: David Miller <davem@davemloft.net>
Date: 2017-03-01 17:51:32
Also in: lkml

From: David Howells <dhowells@redhat.com>
Date: Mon, 27 Feb 2017 15:43:06 +0000
All the routines by which rxrpc is accessed from the outside are serialised
by means of the socket lock (sendmsg, recvmsg, bind,
rxrpc_kernel_begin_call(), ...) and this presents a problem:
 ...
Fix this by:
 ...
This patch has the nice bonus that calls on the same socket are now to some
extent parallelisable.


Note that we might want to move rxrpc_service_prealloc() calls out from the
socket lock and give it its own lock, so that we don't hang progress in
other calls because we're waiting for the allocator.

We probably also want to avoid calling rxrpc_notify_socket() from within
the socket lock (rxrpc_accept_call()).

Signed-off-by: David Howells <dhowells@redhat.com>
Tested-by: Marc Dionne <redacted>
Applied, thanks David.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help