summaryrefslogtreecommitdiffstats
path: root/net/bluetooth
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2015-12-03 21:03:21 -0500
committerDavid S. Miller <davem@davemloft.net>2015-12-03 21:09:12 -0500
commitf188b951f33a0464338f94f928338f84fc0e4392 (patch)
tree17ad63719242b1de0266627a1dc92ba869a3ba4e /net/bluetooth
parent6b20da4d8f3f6a3be9f67e3207f435cfaa5f7f97 (diff)
parent071f5d105a0ae93aeb02197c4ee3557e8cc57a21 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts: drivers/net/ethernet/renesas/ravb_main.c kernel/bpf/syscall.c net/ipv4/ipmr.c All three conflicts were cases of overlapping changes. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/bluetooth')
-rw-r--r--net/bluetooth/af_bluetooth.c6
-rw-r--r--net/bluetooth/smp.c7
2 files changed, 9 insertions, 4 deletions
diff --git a/net/bluetooth/af_bluetooth.c b/net/bluetooth/af_bluetooth.c
index a83c6a73f562..5785e8e6400e 100644
--- a/net/bluetooth/af_bluetooth.c
+++ b/net/bluetooth/af_bluetooth.c
@@ -269,11 +269,11 @@ static long bt_sock_data_wait(struct sock *sk, long timeo)
269 if (signal_pending(current) || !timeo) 269 if (signal_pending(current) || !timeo)
270 break; 270 break;
271 271
272 set_bit(SOCK_ASYNC_WAITDATA, &sk->sk_socket->flags); 272 sk_set_bit(SOCKWQ_ASYNC_WAITDATA, sk);
273 release_sock(sk); 273 release_sock(sk);
274 timeo = schedule_timeout(timeo); 274 timeo = schedule_timeout(timeo);
275 lock_sock(sk); 275 lock_sock(sk);
276 clear_bit(SOCK_ASYNC_WAITDATA, &sk->sk_socket->flags); 276 sk_clear_bit(SOCKWQ_ASYNC_WAITDATA, sk);
277 } 277 }
278 278
279 __set_current_state(TASK_RUNNING); 279 __set_current_state(TASK_RUNNING);
@@ -439,7 +439,7 @@ unsigned int bt_sock_poll(struct file *file, struct socket *sock,
439 if (!test_bit(BT_SK_SUSPEND, &bt_sk(sk)->flags) && sock_writeable(sk)) 439 if (!test_bit(BT_SK_SUSPEND, &bt_sk(sk)->flags) && sock_writeable(sk))
440 mask |= POLLOUT | POLLWRNORM | POLLWRBAND; 440 mask |= POLLOUT | POLLWRNORM | POLLWRBAND;
441 else 441 else
442 set_bit(SOCK_ASYNC_NOSPACE, &sk->sk_socket->flags); 442 sk_set_bit(SOCKWQ_ASYNC_NOSPACE, sk);
443 443
444 return mask; 444 return mask;
445} 445}
diff --git a/net/bluetooth/smp.c b/net/bluetooth/smp.c
index c91353841e40..ffed8a1d4f27 100644
--- a/net/bluetooth/smp.c
+++ b/net/bluetooth/smp.c
@@ -3027,8 +3027,13 @@ static void smp_ready_cb(struct l2cap_chan *chan)
3027 3027
3028 BT_DBG("chan %p", chan); 3028 BT_DBG("chan %p", chan);
3029 3029
3030 /* No need to call l2cap_chan_hold() here since we already own
3031 * the reference taken in smp_new_conn_cb(). This is just the
3032 * first time that we tie it to a specific pointer. The code in
3033 * l2cap_core.c ensures that there's no risk this function wont
3034 * get called if smp_new_conn_cb was previously called.
3035 */
3030 conn->smp = chan; 3036 conn->smp = chan;
3031 l2cap_chan_hold(chan);
3032 3037
3033 if (hcon->type == ACL_LINK && test_bit(HCI_CONN_ENCRYPT, &hcon->flags)) 3038 if (hcon->type == ACL_LINK && test_bit(HCI_CONN_ENCRYPT, &hcon->flags))
3034 bredr_pairing(chan); 3039 bredr_pairing(chan);