diff options
author | Eric Dumazet <eric.dumazet@gmail.com> | 2010-04-20 09:03:51 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-04-20 19:37:13 -0400 |
commit | aa395145165cb06a0d0885221bbe0ce4a564391d (patch) | |
tree | 118b0403621f10db8dc3dbf12079f9af5b19e05d /net/bluetooth/bnep | |
parent | ab9304717f7624c41927f442e6b6d418b2d8b3e4 (diff) |
net: sk_sleep() helper
Define a new function to return the waitqueue of a "struct sock".
static inline wait_queue_head_t *sk_sleep(struct sock *sk)
{
return sk->sk_sleep;
}
Change all read occurrences of sk_sleep by a call to this function.
Needed for a future RCU conversion. sk_sleep wont be a field directly
available.
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/bluetooth/bnep')
-rw-r--r-- | net/bluetooth/bnep/core.c | 8 | ||||
-rw-r--r-- | net/bluetooth/bnep/netdev.c | 6 |
2 files changed, 7 insertions, 7 deletions
diff --git a/net/bluetooth/bnep/core.c b/net/bluetooth/bnep/core.c index 8062dad6d10d..f10b41fb05a0 100644 --- a/net/bluetooth/bnep/core.c +++ b/net/bluetooth/bnep/core.c | |||
@@ -474,7 +474,7 @@ static int bnep_session(void *arg) | |||
474 | set_user_nice(current, -15); | 474 | set_user_nice(current, -15); |
475 | 475 | ||
476 | init_waitqueue_entry(&wait, current); | 476 | init_waitqueue_entry(&wait, current); |
477 | add_wait_queue(sk->sk_sleep, &wait); | 477 | add_wait_queue(sk_sleep(sk), &wait); |
478 | while (!atomic_read(&s->killed)) { | 478 | while (!atomic_read(&s->killed)) { |
479 | set_current_state(TASK_INTERRUPTIBLE); | 479 | set_current_state(TASK_INTERRUPTIBLE); |
480 | 480 | ||
@@ -496,7 +496,7 @@ static int bnep_session(void *arg) | |||
496 | schedule(); | 496 | schedule(); |
497 | } | 497 | } |
498 | set_current_state(TASK_RUNNING); | 498 | set_current_state(TASK_RUNNING); |
499 | remove_wait_queue(sk->sk_sleep, &wait); | 499 | remove_wait_queue(sk_sleep(sk), &wait); |
500 | 500 | ||
501 | /* Cleanup session */ | 501 | /* Cleanup session */ |
502 | down_write(&bnep_session_sem); | 502 | down_write(&bnep_session_sem); |
@@ -507,7 +507,7 @@ static int bnep_session(void *arg) | |||
507 | /* Wakeup user-space polling for socket errors */ | 507 | /* Wakeup user-space polling for socket errors */ |
508 | s->sock->sk->sk_err = EUNATCH; | 508 | s->sock->sk->sk_err = EUNATCH; |
509 | 509 | ||
510 | wake_up_interruptible(s->sock->sk->sk_sleep); | 510 | wake_up_interruptible(sk_sleep(s->sock->sk)); |
511 | 511 | ||
512 | /* Release the socket */ | 512 | /* Release the socket */ |
513 | fput(s->sock->file); | 513 | fput(s->sock->file); |
@@ -638,7 +638,7 @@ int bnep_del_connection(struct bnep_conndel_req *req) | |||
638 | 638 | ||
639 | /* Kill session thread */ | 639 | /* Kill session thread */ |
640 | atomic_inc(&s->killed); | 640 | atomic_inc(&s->killed); |
641 | wake_up_interruptible(s->sock->sk->sk_sleep); | 641 | wake_up_interruptible(sk_sleep(s->sock->sk)); |
642 | } else | 642 | } else |
643 | err = -ENOENT; | 643 | err = -ENOENT; |
644 | 644 | ||
diff --git a/net/bluetooth/bnep/netdev.c b/net/bluetooth/bnep/netdev.c index d48b33f4d4ba..0faad5ce6dc4 100644 --- a/net/bluetooth/bnep/netdev.c +++ b/net/bluetooth/bnep/netdev.c | |||
@@ -109,7 +109,7 @@ static void bnep_net_set_mc_list(struct net_device *dev) | |||
109 | } | 109 | } |
110 | 110 | ||
111 | skb_queue_tail(&sk->sk_write_queue, skb); | 111 | skb_queue_tail(&sk->sk_write_queue, skb); |
112 | wake_up_interruptible(sk->sk_sleep); | 112 | wake_up_interruptible(sk_sleep(sk)); |
113 | #endif | 113 | #endif |
114 | } | 114 | } |
115 | 115 | ||
@@ -193,11 +193,11 @@ static netdev_tx_t bnep_net_xmit(struct sk_buff *skb, | |||
193 | /* | 193 | /* |
194 | * We cannot send L2CAP packets from here as we are potentially in a bh. | 194 | * We cannot send L2CAP packets from here as we are potentially in a bh. |
195 | * So we have to queue them and wake up session thread which is sleeping | 195 | * So we have to queue them and wake up session thread which is sleeping |
196 | * on the sk->sk_sleep. | 196 | * on the sk_sleep(sk). |
197 | */ | 197 | */ |
198 | dev->trans_start = jiffies; | 198 | dev->trans_start = jiffies; |
199 | skb_queue_tail(&sk->sk_write_queue, skb); | 199 | skb_queue_tail(&sk->sk_write_queue, skb); |
200 | wake_up_interruptible(sk->sk_sleep); | 200 | wake_up_interruptible(sk_sleep(sk)); |
201 | 201 | ||
202 | if (skb_queue_len(&sk->sk_write_queue) >= BNEP_TX_QUEUE_LEN) { | 202 | if (skb_queue_len(&sk->sk_write_queue) >= BNEP_TX_QUEUE_LEN) { |
203 | BT_DBG("tx queue is full"); | 203 | BT_DBG("tx queue is full"); |