| Subject: mm-slab-move-debug-out.patch |
| From: Thomas Gleixner <tglx@linutronix.de> |
| Date: Mon, 20 Jun 2011 10:42:04 +0200 |
| |
| Signed-off-by: Thomas Gleixner <tglx@linutronix.de> |
| --- |
| mm/slab.c | 4 ++-- |
| 1 file changed, 2 insertions(+), 2 deletions(-) |
| |
| Index: linux-stable/mm/slab.c |
| =================================================================== |
| --- linux-stable.orig/mm/slab.c |
| +++ linux-stable/mm/slab.c |
| @@ -3991,10 +3991,10 @@ void kmem_cache_free(struct kmem_cache * |
| { |
| unsigned long flags; |
| |
| - local_irq_save(flags); |
| debug_check_no_locks_freed(objp, cachep->object_size); |
| if (!(cachep->flags & SLAB_DEBUG_OBJECTS)) |
| debug_check_no_obj_freed(objp, cachep->object_size); |
| + local_irq_save(flags); |
| __cache_free(cachep, objp, __builtin_return_address(0)); |
| local_irq_restore(flags); |
| |
| @@ -4020,12 +4020,12 @@ void kfree(const void *objp) |
| |
| if (unlikely(ZERO_OR_NULL_PTR(objp))) |
| return; |
| - local_irq_save(flags); |
| kfree_debugcheck(objp); |
| c = virt_to_cache(objp); |
| debug_check_no_locks_freed(objp, c->object_size); |
| |
| debug_check_no_obj_freed(objp, c->object_size); |
| + local_irq_save(flags); |
| __cache_free(c, (void *)objp, __builtin_return_address(0)); |
| local_irq_restore(flags); |
| } |