slub: Drop DEFAULT_MAX_ORDER / DEFAULT_MIN_OBJECTS

We can now fallback to order 0 slabs. So set the slub_max_order to
PAGE_CACHE_ORDER_COSTLY but keep the slub_min_objects at 4. This
will mostly preserve the orders used in 2.6.25. F.e. The 2k kmalloc slab
will use order 1 allocs and the 4k kmalloc slab order 2.

Signed-off-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
This commit is contained in:
Christoph Lameter 2008-04-14 19:11:41 +03:00 committed by Pekka Enberg
parent 31d33baf36
commit 114e9e89e6

View File

@ -149,25 +149,6 @@ static inline void ClearSlabDebug(struct page *page)
/* Enable to test recovery from slab corruption on boot */ /* Enable to test recovery from slab corruption on boot */
#undef SLUB_RESILIENCY_TEST #undef SLUB_RESILIENCY_TEST
#if PAGE_SHIFT <= 12
/*
* Small page size. Make sure that we do not fragment memory
*/
#define DEFAULT_MAX_ORDER 1
#define DEFAULT_MIN_OBJECTS 4
#else
/*
* Large page machines are customarily able to handle larger
* page orders.
*/
#define DEFAULT_MAX_ORDER 2
#define DEFAULT_MIN_OBJECTS 8
#endif
/* /*
* Mininum number of partial slabs. These will be left on the partial * Mininum number of partial slabs. These will be left on the partial
* lists even if they are empty. kmem_cache_shrink may reclaim them. * lists even if they are empty. kmem_cache_shrink may reclaim them.
@ -1821,8 +1802,8 @@ static struct page *get_object_page(const void *x)
* take the list_lock. * take the list_lock.
*/ */
static int slub_min_order; static int slub_min_order;
static int slub_max_order = DEFAULT_MAX_ORDER; static int slub_max_order = PAGE_ALLOC_COSTLY_ORDER;
static int slub_min_objects = DEFAULT_MIN_OBJECTS; static int slub_min_objects = 4;
/* /*
* Merge control. If this is set then no merging of slab caches will occur. * Merge control. If this is set then no merging of slab caches will occur.