Thread (4 messages) 4 messages, 2 authors, 2021-06-22

Re: [PATCH 4.19] inet: use bigger hash table for IP ID generation (backported to 4.19)

From: Greg KH <gregkh@linuxfoundation.org>
Date: 2021-06-21 15:28:43
Also in: lkml, netdev

On Thu, Jun 17, 2021 at 01:19:18AM -0700, Amit Klein wrote:
Subject: inet: use bigger hash table for IP ID generation (backported to 4.19)
From: Amit Klein <redacted>

This is a backport to 4.19 of the following patch, originally
developed by Eric Dumazet.

In commit 73f156a6e8c1 ("inetpeer: get rid of ip_id_count")
I used a very small hash table that could be abused
by patient attackers to reveal sensitive information.

Switch to a dynamic sizing, depending on RAM size.

Typical big hosts will now use 128x more storage (2 MB)
to get a similar increase in security and reduction
of hash collisions.

As a bonus, use of alloc_large_system_hash() spreads
allocated memory among all NUMA nodes.

Fixes: 73f156a6e8c1 ("inetpeer: get rid of ip_id_count")
Reported-by: Amit Klein <redacted>
Cc: stable@vger.kernel.org
Cc: Eric Dumazet <edumazet@google.com>
Cc: Willy Tarreau <w@1wt.eu>
---
 net/ipv4/route.c | 42 ++++++++++++++++++++++++++++--------------
 1 file changed, 28 insertions(+), 14 deletions(-)

(limited to 'net/ipv4/route.c')
I had to dig up what the upstream git commit id was for this, please
specify it next time :(

I've queued this, and the 4.14 version up.  Can you create a 4.4.y and
4.9.y version as well?

thanks,

greg k-h
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help