]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
NFC: Don't hold a NULL connecting LLCP socket lock
authorSamuel Ortiz <sameo@linux.intel.com>
Mon, 21 May 2012 09:44:42 +0000 (11:44 +0200)
committerSamuel Ortiz <sameo@linux.intel.com>
Mon, 4 Jun 2012 19:34:31 +0000 (21:34 +0200)
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
net/nfc/llcp/llcp.c

index 5705e6dffb32d8cec7e6afe45b64d69483128206..b694313c2be5d5a6bf9bbda5bfa0f5fc6832e0ab 100644 (file)
@@ -477,8 +477,10 @@ static struct nfc_llcp_sock *nfc_llcp_connecting_sock_get(struct nfc_llcp_local
        sk_for_each(sk, node, &local->connecting_sockets.head) {
                llcp_sock = nfc_llcp_sock(sk);
 
-               if (llcp_sock->ssap == ssap)
+               if (llcp_sock->ssap == ssap) {
+                       sock_hold(&llcp_sock->sk);
                        goto out;
+               }
        }
 
        llcp_sock = NULL;
@@ -486,8 +488,6 @@ static struct nfc_llcp_sock *nfc_llcp_connecting_sock_get(struct nfc_llcp_local
 out:
        read_unlock(&local->connecting_sockets.lock);
 
-       sock_hold(&llcp_sock->sk);
-
        return llcp_sock;
 }