Commit 98eb5683 authored by Andrew Morton's avatar Andrew Morton Committed by David S. Miller
Browse files

[TIPC]: Fix semaphore handling.



As noted by Kevin, tipc's release() does down_interruptible() and
ignores the return value.  So if signal_pending() we'll end up doing
up() on a non-downed semaphore.  Fix.

Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent cbebc51f
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -253,7 +253,7 @@ static int release(struct socket *sock)
	dbg("sock_delete: %x\n",tsock);
	if (!tsock)
		return 0;
	down_interruptible(&tsock->sem);
	down(&tsock->sem);
	if (!sock->sk) {
		up(&tsock->sem);
		return 0;