I just put some printk()s into kmem_cache_create(), and they show
the 2048 and 4096 general-caches use an order of 2 which certainly
isn't enormous. Were you using debugging support (ie. red-zoning)
when you obtained your figures? Perhaps there is a problem
there.... Maybe you have 8196byte pages? I'll re-check the maths.
order 2 is 4 pages, that is too much and risks allocation failures
even when much memory is available. Any attempt to rely on generic
allocations for a major subsystem which grabs more than 2 pages at a
time from gfp() is asking for big trouble.
In terms of the fragmentation behavior of the buddy system page
allocator we have, order 2 _is_ in fact enormous.
---------------------------------------------////
Yow! 11.26 MB/s remote host TCP bandwidth & ////
199 usec remote TCP latency over 100Mb/s ////
ethernet. Beat that! ////
-----------------------------------------////__________ o
David S. Miller, davem@caip.rutgers.edu /_____________/ / // /_/ ><