Commit 81f2e8ad authored by David Howells's avatar David Howells
Browse files

rxrpc: Don't use sk->sk_receive_queue.lock to guard socket state changes



Don't use sk->sk_receive_queue.lock to guard socket state changes as the
socket mutex is sufficient.

Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
cc: Marc Dionne <marc.dionne@auristor.com>
cc: linux-afs@lists.infradead.org
parent 4041a8ff
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -812,14 +812,12 @@ static int rxrpc_shutdown(struct socket *sock, int flags)

	lock_sock(sk);

	spin_lock_bh(&sk->sk_receive_queue.lock);
	if (sk->sk_state < RXRPC_CLOSE) {
		sk->sk_state = RXRPC_CLOSE;
		sk->sk_shutdown = SHUTDOWN_MASK;
	} else {
		ret = -ESHUTDOWN;
	}
	spin_unlock_bh(&sk->sk_receive_queue.lock);

	rxrpc_discard_prealloc(rx);

@@ -872,9 +870,7 @@ static int rxrpc_release_sock(struct sock *sk)
		break;
	}

	spin_lock_bh(&sk->sk_receive_queue.lock);
	sk->sk_state = RXRPC_CLOSE;
	spin_unlock_bh(&sk->sk_receive_queue.lock);

	if (rx->local && rcu_access_pointer(rx->local->service) == rx) {
		write_lock(&rx->local->services_lock);