From 48aed75f5e879a55f03ed0b7b0d5434e4089cf6c Mon Sep 17 00:00:00 2001 From: Dimitri Gorokhovik Date: Fri, 29 Dec 2006 16:48:28 -0800 Subject: [PATCH] --- yaml --- r: 45117 b: refs/heads/master c: bcb4ddb46a4c66d64d091e7ffa951b2aa1ba537f h: refs/heads/master i: 45115: e26dfe2797e8a327c396f3c34c0f5b9811e0e1de v: v3 --- [refs] | 2 +- trunk/mm/slob.c | 11 +++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 2d27cbad43e3..f7c82570ac79 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 131612dfe7923bd0ce5f82d6ed8303a7ef96e574 +refs/heads/master: bcb4ddb46a4c66d64d091e7ffa951b2aa1ba537f diff --git a/trunk/mm/slob.c b/trunk/mm/slob.c index 2e9236e10ed1..5adc29cb58dd 100644 --- a/trunk/mm/slob.c +++ b/trunk/mm/slob.c @@ -60,6 +60,8 @@ static DEFINE_SPINLOCK(slob_lock); static DEFINE_SPINLOCK(block_lock); static void slob_free(void *b, int size); +static void slob_timer_cbk(void); + static void *slob_alloc(size_t size, gfp_t gfp, int align) { @@ -326,7 +328,7 @@ const char *kmem_cache_name(struct kmem_cache *c) EXPORT_SYMBOL(kmem_cache_name); static struct timer_list slob_timer = TIMER_INITIALIZER( - (void (*)(unsigned long))kmem_cache_init, 0, 0); + (void (*)(unsigned long))slob_timer_cbk, 0, 0); int kmem_cache_shrink(struct kmem_cache *d) { @@ -339,7 +341,12 @@ int kmem_ptr_validate(struct kmem_cache *a, const void *b) return 0; } -void kmem_cache_init(void) +void __init kmem_cache_init(void) +{ + slob_timer_cbk(); +} + +static void slob_timer_cbk(void) { void *p = slob_alloc(PAGE_SIZE, 0, PAGE_SIZE-1);