From: Catalin Marinas Date: Fri, 9 Oct 2009 09:30:34 +0000 (+0100) Subject: kmemleak: Check for NULL pointer returned by create_object() X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=0d5d1aadc8e299874a6a014d65b6bb903b12424d;p=openwrt%2Fstaging%2Fblogic.git kmemleak: Check for NULL pointer returned by create_object() This patch adds NULL pointer checking in the early_alloc() function. Reported-by: Paul E. McKenney Signed-off-by: Catalin Marinas Acked-by: Pekka Enberg Acked-by: Paul E. McKenney Signed-off-by: Linus Torvalds --- diff --git a/mm/kmemleak.c b/mm/kmemleak.c index a6175180d188..8bf765c4f58d 100644 --- a/mm/kmemleak.c +++ b/mm/kmemleak.c @@ -834,11 +834,14 @@ static void early_alloc(struct early_log *log) rcu_read_lock(); object = create_object((unsigned long)log->ptr, log->size, log->min_count, GFP_ATOMIC); + if (!object) + goto out; spin_lock_irqsave(&object->lock, flags); for (i = 0; i < log->trace_len; i++) object->trace[i] = log->trace[i]; object->trace_len = log->trace_len; spin_unlock_irqrestore(&object->lock, flags); +out: rcu_read_unlock(); }