summary refs log tree commit diff
path: root/net/rose
diff options
context:
space:
mode:
authorAndrew Morton <akpm@osdl.org>2005-10-28 15:12:02 -0700
committerArnaldo Carvalho de Melo <acme@mandriva.com>2005-10-31 16:41:45 -0200
commita3d7a9d77533d7516a8cfb8e2b612cd5ead4fa59 (patch)
tree62ea3dce8a8d7c6b984c0815347de9ca187e8335 /net/rose
parent6b7d31fcdda5938e5d3f1f8b0922cc25aa200dfc (diff)
downloadlinux-a3d7a9d77533d7516a8cfb8e2b612cd5ead4fa59.tar.gz
[ROSE]: rose_heartbeat_expiry() locking fix
Missing unlock, as noted by Ted Unangst <tedu@coverity.com>.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Diffstat (limited to 'net/rose')
-rw-r--r--net/rose/rose_timer.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/rose/rose_timer.c b/net/rose/rose_timer.c
index 50ae0371dab8..b6c8f38cc26c 100644
--- a/net/rose/rose_timer.c
+++ b/net/rose/rose_timer.c
@@ -138,6 +138,7 @@ static void rose_heartbeat_expiry(unsigned long param)
 		   is accepted() it isn't 'dead' so doesn't get removed. */
 		if (sock_flag(sk, SOCK_DESTROY) ||
 		    (sk->sk_state == TCP_LISTEN && sock_flag(sk, SOCK_DEAD))) {
+			bh_unlock_sock(sk);
 			rose_destroy_socket(sk);
 			return;
 		}