From: Paolo Abeni <pab...@redhat.com> Date: Mon, 25 Mar 2019 14:18:06 +0100
> Christoph reported a stall while peeking datagram with an offset when > busy polling is enabled. __skb_try_recv_datagram() uses as the loop > termination condition 'queue empty'. When peeking, the socket > queue can be not empty, even when no additional packets are received. > > Address the issue explicitly checking for receive queue changes, > as currently done by __skb_wait_for_more_packets(). > > Fixes: 2b5cd0dfa384 ("net: Change return type of sk_busy_loop from bool to > void") > Reported-and-tested-by: Christoph Paasch <cpaa...@apple.com> > Signed-off-by: Paolo Abeni <pab...@redhat.com> Applied and queued up for -stable, thanks Paolo.