Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 141646ce authored by Andrew Hendry's avatar Andrew Hendry Committed by David S. Miller
Browse files

X.25 remove bkl in accept



Accept already has socket locking.

[ Extend socket locking over TCP_LISTEN state test. -DaveM ]

Signed-off-by: default avatarAndrew Hendry <andrew.hendry@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 90c27297
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -869,8 +869,7 @@ static int x25_accept(struct socket *sock, struct socket *newsock, int flags)
	struct sk_buff *skb;
	int rc = -EINVAL;

	lock_kernel();
	if (!sk || sk->sk_state != TCP_LISTEN)
	if (!sk)
		goto out;

	rc = -EOPNOTSUPP;
@@ -878,6 +877,10 @@ static int x25_accept(struct socket *sock, struct socket *newsock, int flags)
		goto out;

	lock_sock(sk);
	rc = -EINVAL;
	if (sk->sk_state != TCP_LISTEN)
		goto out2;

	rc = x25_wait_for_data(sk, sk->sk_rcvtimeo);
	if (rc)
		goto out2;
@@ -897,7 +900,6 @@ static int x25_accept(struct socket *sock, struct socket *newsock, int flags)
out2:
	release_sock(sk);
out:
	unlock_kernel();
	return rc;
}