net/core: add lock context change annotations in net/core/sock.c
authorNamhyung Kim <namhyung@gmail.com>
Wed, 8 Sep 2010 03:48:48 +0000 (03:48 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 9 Sep 2010 22:02:39 +0000 (15:02 -0700)
__lock_sock() and __release_sock() releases and regrabs lock but
were missing proper annotations. Add it. This removes following
warning from sparse. (Currently __lock_sock() does not emit any
warning about it but I think it is better to add also.)

 net/core/sock.c:1580:17: warning: context imbalance in '__release_sock' - unexpected unlock

Signed-off-by: Namhyung Kim <namhyung@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/sock.c

index b05b9b6ddb8700989e63e8597f6946ffd205bdba..f3a06c40d5e023585852f3bf031c443a86cc5d7f 100644 (file)
@@ -1557,6 +1557,8 @@ struct sk_buff *sock_alloc_send_skb(struct sock *sk, unsigned long size,
 EXPORT_SYMBOL(sock_alloc_send_skb);
 
 static void __lock_sock(struct sock *sk)
+       __releases(&sk->sk_lock.slock)
+       __acquires(&sk->sk_lock.slock)
 {
        DEFINE_WAIT(wait);
 
@@ -1573,6 +1575,8 @@ static void __lock_sock(struct sock *sk)
 }
 
 static void __release_sock(struct sock *sk)
+       __releases(&sk->sk_lock.slock)
+       __acquires(&sk->sk_lock.slock)
 {
        struct sk_buff *skb = sk->sk_backlog.head;