[PATCH net-next] ipv4: 16 slots in initial fib_info hash table

Subsystems: networking [general], networking [ipv4/ipv6], the rest

STALE5098d

2 messages, 2 authors, 2012-10-22 · open the first message on its own page

[PATCH net-next] ipv4: 16 slots in initial fib_info hash table

From: Eric Dumazet <hidden>
Date: 2012-10-22 06:12:13

From: Eric Dumazet <redacted>

A small host typically needs ~10 fib_info structures, so create initial
hash table with 16 slots instead of only one. This removes potential
false sharing and reallocs/rehashes (1->2->4->8->16)

Signed-off-by: Eric Dumazet <redacted>
---
 net/ipv4/fib_semantics.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/ipv4/fib_semantics.c b/net/ipv4/fib_semantics.c
index 71b125c..4797a80 100644
--- a/net/ipv4/fib_semantics.c
+++ b/net/ipv4/fib_semantics.c
@@ -803,7 +803,7 @@ struct fib_info *fib_create_info(struct fib_config *cfg)
 		unsigned int bytes;
 
 		if (!new_size)
-			new_size = 1;
+			new_size = 16;
 		bytes = new_size * sizeof(struct hlist_head *);
 		new_info_hash = fib_info_hash_alloc(bytes);
 		new_laddrhash = fib_info_hash_alloc(bytes);

Re: [PATCH net-next] ipv4: 16 slots in initial fib_info hash table

From: David Miller <davem@davemloft.net>
Date: 2012-10-22 19:11:51

From: Eric Dumazet <redacted>
Date: Mon, 22 Oct 2012 08:12:09 +0200
From: Eric Dumazet <redacted>

A small host typically needs ~10 fib_info structures, so create initial
hash table with 16 slots instead of only one. This removes potential
false sharing and reallocs/rehashes (1->2->4->8->16)

Signed-off-by: Eric Dumazet <redacted>
Applied.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help