diff --git a/net/core/datagram.c b/net/core/datagram.c index d3b99616a6c5..865a8cb7b0bd 100644 --- a/net/core/datagram.c +++ b/net/core/datagram.c @@ -95,7 +95,7 @@ int __skb_wait_for_more_packets(struct sock *sk, int *err, long *timeo_p, if (error) goto out_err; - if (sk->sk_receive_queue.prev != skb) + if (READ_ONCE(sk->sk_receive_queue.prev) != skb) goto out; /* Socket shut down? */