aboutsummaryrefslogtreecommitdiffstats
path: root/net/nfc/llcp
diff options
context:
space:
mode:
authorJohn W. Linville <linville@tuxdriver.com>2013-04-10 09:31:39 -0400
committerJohn W. Linville <linville@tuxdriver.com>2013-04-10 09:31:39 -0400
commit6fe5468f452c0c40348ebd4e737758a842286ca8 (patch)
treebefe5ab33c457a9e695b65be72600f383266e611 /net/nfc/llcp
parentdeb09280cd72ceb8b0679490f076d0e9f30dd456 (diff)
parent69a2bac8984c4e6dba78b330ed183fd580c65e99 (diff)
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless
Conflicts: drivers/net/wireless/rt2x00/rt2x00pci.c
Diffstat (limited to 'net/nfc/llcp')
-rw-r--r--net/nfc/llcp/llcp.c8
-rw-r--r--net/nfc/llcp/sock.c6
2 files changed, 3 insertions, 11 deletions
diff --git a/net/nfc/llcp/llcp.c b/net/nfc/llcp/llcp.c
index bb67b98b9797..7de0368aff0c 100644
--- a/net/nfc/llcp/llcp.c
+++ b/net/nfc/llcp/llcp.c
@@ -107,8 +107,6 @@ static void nfc_llcp_socket_release(struct nfc_llcp_local *local, bool listen,
107 accept_sk->sk_state_change(sk); 107 accept_sk->sk_state_change(sk);
108 108
109 bh_unlock_sock(accept_sk); 109 bh_unlock_sock(accept_sk);
110
111 sock_orphan(accept_sk);
112 } 110 }
113 111
114 if (listen == true) { 112 if (listen == true) {
@@ -134,8 +132,6 @@ static void nfc_llcp_socket_release(struct nfc_llcp_local *local, bool listen,
134 132
135 bh_unlock_sock(sk); 133 bh_unlock_sock(sk);
136 134
137 sock_orphan(sk);
138
139 sk_del_node_init(sk); 135 sk_del_node_init(sk);
140 } 136 }
141 137
@@ -164,8 +160,6 @@ static void nfc_llcp_socket_release(struct nfc_llcp_local *local, bool listen,
164 160
165 bh_unlock_sock(sk); 161 bh_unlock_sock(sk);
166 162
167 sock_orphan(sk);
168
169 sk_del_node_init(sk); 163 sk_del_node_init(sk);
170 } 164 }
171 165
@@ -869,7 +863,6 @@ static void nfc_llcp_recv_ui(struct nfc_llcp_local *local,
869 skb_get(skb); 863 skb_get(skb);
870 } else { 864 } else {
871 pr_err("Receive queue is full\n"); 865 pr_err("Receive queue is full\n");
872 kfree_skb(skb);
873 } 866 }
874 867
875 nfc_llcp_sock_put(llcp_sock); 868 nfc_llcp_sock_put(llcp_sock);
@@ -1072,7 +1065,6 @@ static void nfc_llcp_recv_hdlc(struct nfc_llcp_local *local,
1072 skb_get(skb); 1065 skb_get(skb);
1073 } else { 1066 } else {
1074 pr_err("Receive queue is full\n"); 1067 pr_err("Receive queue is full\n");
1075 kfree_skb(skb);
1076 } 1068 }
1077 } 1069 }
1078 1070
diff --git a/net/nfc/llcp/sock.c b/net/nfc/llcp/sock.c
index f1b377e247fe..6fa76704cb13 100644
--- a/net/nfc/llcp/sock.c
+++ b/net/nfc/llcp/sock.c
@@ -388,7 +388,9 @@ struct sock *nfc_llcp_accept_dequeue(struct sock *parent,
388 } 388 }
389 389
390 if (sk->sk_state == LLCP_CONNECTED || !newsock) { 390 if (sk->sk_state == LLCP_CONNECTED || !newsock) {
391 nfc_llcp_accept_unlink(sk); 391 list_del_init(&lsk->accept_queue);
392 sock_put(sk);
393
392 if (newsock) 394 if (newsock)
393 sock_graft(sk, newsock); 395 sock_graft(sk, newsock);
394 396
@@ -582,8 +584,6 @@ static int llcp_sock_release(struct socket *sock)
582 nfc_llcp_accept_unlink(accept_sk); 584 nfc_llcp_accept_unlink(accept_sk);
583 585
584 release_sock(accept_sk); 586 release_sock(accept_sk);
585
586 sock_orphan(accept_sk);
587 } 587 }
588 } 588 }
589 589