Messages in this thread | | | Date | Wed, 01 Mar 2017 12:51:26 -0500 (EST) | Subject | Re: [PATCH net] rxrpc: Fix deadlock between call creation and sendmsg/recvmsg | From | David Miller <> |
| |
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 <marc.c.dionne@auristor.com>
Applied, thanks David.
| |