[XFRM]: Dynamic xfrm_state hash table sizing.
authorDavid S. Miller <davem@sunset.davemloft.net>
Thu, 24 Aug 2006 10:08:07 +0000 (03:08 -0700)
committerDavid S. Miller <davem@sunset.davemloft.net>
Fri, 22 Sep 2006 22:08:41 +0000 (15:08 -0700)
commitf034b5d4efdfe0fb9e2a1ce1d95fa7914f24de49
treee166f1e87606f7e53a78cac543284c3484481727
parent8f126e37c0b250310a48a609bedf92a19a5559ec
[XFRM]: Dynamic xfrm_state hash table sizing.

The grow algorithm is simple, we grow if:

1) we see a hash chain collision at insert, and
2) we haven't hit the hash size limit (currently 1*1024*1024 slots), and
3) the number of xfrm_state objects is > the current hash mask

All of this needs some tweaking.

Remove __initdata from "hashdist" so we can use it safely at run time.

Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/bootmem.h
mm/page_alloc.c
net/xfrm/xfrm_state.c