aboutsummaryrefslogtreecommitdiffstats
path: root/mm/slob.c
diff options
context:
space:
mode:
Diffstat (limited to 'mm/slob.c')
-rw-r--r--mm/slob.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/mm/slob.c b/mm/slob.c
index c9cd31d27e69..0bfa680a8981 100644
--- a/mm/slob.c
+++ b/mm/slob.c
@@ -403,10 +403,11 @@ static void slob_free(void *block, int size)
403 /* Go directly to page allocator. Do not pass slob allocator */ 403 /* Go directly to page allocator. Do not pass slob allocator */
404 if (slob_page_free(sp)) 404 if (slob_page_free(sp))
405 clear_slob_page_free(sp); 405 clear_slob_page_free(sp);
406 spin_unlock_irqrestore(&slob_lock, flags);
406 clear_slob_page(sp); 407 clear_slob_page(sp);
407 free_slob_page(sp); 408 free_slob_page(sp);
408 free_page((unsigned long)b); 409 free_page((unsigned long)b);
409 goto out; 410 return;
410 } 411 }
411 412
412 if (!slob_page_free(sp)) { 413 if (!slob_page_free(sp)) {
@@ -531,6 +532,7 @@ size_t ksize(const void *block)
531 } else 532 } else
532 return sp->page.private; 533 return sp->page.private;
533} 534}
535EXPORT_SYMBOL(ksize);
534 536
535struct kmem_cache { 537struct kmem_cache {
536 unsigned int size, align; 538 unsigned int size, align;