]> nv-tegra.nvidia Code Review - linux-2.6.git/commitdiff
kmemleak: fix sparse warning over overshadowed flags
authorLuis R. Rodriguez <lrodriguez@Atheros.com>
Tue, 8 Sep 2009 16:32:34 +0000 (17:32 +0100)
committerCatalin Marinas <catalin.marinas@arm.com>
Tue, 8 Sep 2009 16:34:06 +0000 (17:34 +0100)
A secondary irq_save is not required as a locking before it was
already disabling irqs.

This fixes this sparse warning:
mm/kmemleak.c:512:31: warning: symbol 'flags' shadows an earlier one
mm/kmemleak.c:448:23: originally declared here

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Acked-by: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
mm/kmemleak.c

index b18d9ca578b9bab09769622abcab060dbb3c29a7..ffd162abbe5e40c90f3e428e27ea0cf53a61a03b 100644 (file)
@@ -555,6 +555,7 @@ static struct kmemleak_object *create_object(unsigned long ptr, size_t size,
        object->tree_node.last = ptr + size - 1;
 
        write_lock_irqsave(&kmemleak_lock, flags);
        object->tree_node.last = ptr + size - 1;
 
        write_lock_irqsave(&kmemleak_lock, flags);
+
        min_addr = min(min_addr, ptr);
        max_addr = max(max_addr, ptr + size);
        node = prio_tree_insert(&object_tree_root, &object->tree_node);
        min_addr = min(min_addr, ptr);
        max_addr = max(max_addr, ptr + size);
        node = prio_tree_insert(&object_tree_root, &object->tree_node);
@@ -565,14 +566,12 @@ static struct kmemleak_object *create_object(unsigned long ptr, size_t size,
         * random memory blocks.
         */
        if (node != &object->tree_node) {
         * random memory blocks.
         */
        if (node != &object->tree_node) {
-               unsigned long flags;
-
                kmemleak_stop("Cannot insert 0x%lx into the object search tree "
                              "(already existing)\n", ptr);
                object = lookup_object(ptr, 1);
                kmemleak_stop("Cannot insert 0x%lx into the object search tree "
                              "(already existing)\n", ptr);
                object = lookup_object(ptr, 1);
-               spin_lock_irqsave(&object->lock, flags);
+               spin_lock(&object->lock);
                dump_object_info(object);
                dump_object_info(object);
-               spin_unlock_irqrestore(&object->lock, flags);
+               spin_unlock(&object->lock);
 
                goto out;
        }
 
                goto out;
        }