diff options
author | Eric Dumazet <edumazet@google.com> | 2019-10-24 08:44:50 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-10-28 23:33:41 +0300 |
commit | 3ef7cf57c72f32f61e97f8fa401bc39ea1f1a5d4 (patch) | |
tree | 7f962942a142ed611e6c063171ef0092f8af8fd8 /net/core | |
parent | 137a0dbe3426fd7bcfe3f8117b36a87b3590e4eb (diff) | |
download | linux-3ef7cf57c72f32f61e97f8fa401bc39ea1f1a5d4.tar.xz |
net: use skb_queue_empty_lockless() in poll() handlers
Many poll() handlers are lockless. Using skb_queue_empty_lockless()
instead of skb_queue_empty() is more appropriate.
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core')
-rw-r--r-- | net/core/datagram.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/core/datagram.c b/net/core/datagram.c index c210fc116103..5b685e110aff 100644 --- a/net/core/datagram.c +++ b/net/core/datagram.c @@ -767,7 +767,7 @@ __poll_t datagram_poll(struct file *file, struct socket *sock, mask = 0; /* exceptional events? */ - if (sk->sk_err || !skb_queue_empty(&sk->sk_error_queue)) + if (sk->sk_err || !skb_queue_empty_lockless(&sk->sk_error_queue)) mask |= EPOLLERR | (sock_flag(sk, SOCK_SELECT_ERR_QUEUE) ? EPOLLPRI : 0); @@ -777,7 +777,7 @@ __poll_t datagram_poll(struct file *file, struct socket *sock, mask |= EPOLLHUP; /* readable? */ - if (!skb_queue_empty(&sk->sk_receive_queue)) + if (!skb_queue_empty_lockless(&sk->sk_receive_queue)) mask |= EPOLLIN | EPOLLRDNORM; /* Connection-based need to check for termination and startup */ |