From 3b988b066a71144c581f744b3611a7a82d6e52d5 Mon Sep 17 00:00:00 2001 From: Catalin Marinas Date: Wed, 28 Oct 2009 13:33:11 +0000 Subject: [PATCH] --- yaml --- r: 177827 b: refs/heads/master c: 0587da40be78d3704a48d3e9a619183891727f5f h: refs/heads/master i: 177825: 322cc2070166deec3e19b9cc40b1c5b0a004e6f7 177823: edf2004bb0b6f35acfb35ec0bc3260c2bf3bbefb v: v3 --- [refs] | 2 +- trunk/mm/kmemleak.c | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 421e46480dad..67f4e39b662a 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: a6f5aa1ea05686ad6e84593a00a04161e6dfb3a3 +refs/heads/master: 0587da40be78d3704a48d3e9a619183891727f5f diff --git a/trunk/mm/kmemleak.c b/trunk/mm/kmemleak.c index 96106358e042..f06c0921e472 100644 --- a/trunk/mm/kmemleak.c +++ b/trunk/mm/kmemleak.c @@ -1025,11 +1025,14 @@ static void scan_block(void *_start, void *_end, * added to the gray_list. */ object->count++; - if (color_gray(object)) + if (color_gray(object)) { list_add_tail(&object->gray_list, &gray_list); - else - put_object(object); + spin_unlock_irqrestore(&object->lock, flags); + continue; + } + spin_unlock_irqrestore(&object->lock, flags); + put_object(object); } }