[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20190327.215953.1992775219057881382.davem@davemloft.net>
Date: Wed, 27 Mar 2019 21:59:53 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: pabeni@...hat.com
Cc: netdev@...r.kernel.org, alexander.duyck@...il.com,
christoph.paasch@...il.com
Subject: Re: [PATCH net] net: datagram: fix unbounded loop in
__skb_try_recv_datagram()
From: Paolo Abeni <pabeni@...hat.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 <cpaasch@...le.com>
> Signed-off-by: Paolo Abeni <pabeni@...hat.com>
Applied and queued up for -stable, thanks Paolo.
Powered by blists - more mailing lists