net: add __rcu annotations to sk_wq and wq
Add proper RCU annotations/verbs to sk_wq and wq members Fix __sctp_write_space() sk_sleep() abuse (and sock->wq access) Fix sunrpc sk_sleep() abuse too Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
04cfa852ff
commit
eaefd1105b
@@ -6102,15 +6102,16 @@ static void __sctp_write_space(struct sctp_association *asoc)
|
||||
wake_up_interruptible(&asoc->wait);
|
||||
|
||||
if (sctp_writeable(sk)) {
|
||||
if (sk_sleep(sk) && waitqueue_active(sk_sleep(sk)))
|
||||
wake_up_interruptible(sk_sleep(sk));
|
||||
wait_queue_head_t *wq = sk_sleep(sk);
|
||||
|
||||
if (wq && waitqueue_active(wq))
|
||||
wake_up_interruptible(wq);
|
||||
|
||||
/* Note that we try to include the Async I/O support
|
||||
* here by modeling from the current TCP/UDP code.
|
||||
* We have not tested with it yet.
|
||||
*/
|
||||
if (sock->wq->fasync_list &&
|
||||
!(sk->sk_shutdown & SEND_SHUTDOWN))
|
||||
if (!(sk->sk_shutdown & SEND_SHUTDOWN))
|
||||
sock_wake_async(sock,
|
||||
SOCK_WAKE_SPACE, POLL_OUT);
|
||||
}
|
||||
|
Reference in New Issue
Block a user