[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180815132509.GH31330@kroah.com>
Date: Wed, 15 Aug 2018 15:25:09 +0200
From: Greg KH <gregkh@...ux-foundation.org>
To: Mao Wenan <maowenan@...wei.com>
Cc: dwmw2@...radead.org, netdev@...r.kernel.org,
eric.dumazet@...il.com, edumazet@...gle.com, davem@...emloft.net,
ycheng@...gle.com, jdw@...zon.de
Subject: Re: [PATCH stable 4.4 5/9] tcp: free batches of packets in
tcp_prune_ofo_queue()
On Wed, Aug 15, 2018 at 09:21:04PM +0800, Mao Wenan wrote:
> From: Eric Dumazet <edumazet@...gle.com>
>
> Juha-Matti Tilli reported that malicious peers could inject tiny
> packets in out_of_order_queue, forcing very expensive calls
> to tcp_collapse_ofo_queue() and tcp_prune_ofo_queue() for
> every incoming packet. out_of_order_queue rb-tree can contain
> thousands of nodes, iterating over all of them is not nice.
>
> Before linux-4.9, we would have pruned all packets in ofo_queue
> in one go, every XXXX packets. XXXX depends on sk_rcvbuf and skbs
> truesize, but is about 7000 packets with tcp_rmem[2] default of 6 MB.
>
> Since we plan to increase tcp_rmem[2] in the future to cope with
> modern BDP, can not revert to the old behavior, without great pain.
>
> Strategy taken in this patch is to purge ~12.5 % of the queue capacity.
>
> Fixes: 36a6503fedda ("tcp: refine tcp_prune_ofo_queue() to not drop all packets")
> Signed-off-by: Eric Dumazet <edumazet@...gle.com>
> Reported-by: Juha-Matti Tilli <juha-matti.tilli@....fi>
> Acked-by: Yuchung Cheng <ycheng@...gle.com>
> Acked-by: Soheil Hassas Yeganeh <soheil@...gle.com>
> Signed-off-by: David S. Miller <davem@...emloft.net>
> Signed-off-by: root <root@...alhost.localdomain>
root?
And commit id?
thanks,
greg k-h
Powered by blists - more mailing lists