summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWANG Cong <xiyou.wangcong@gmail.com>2007-12-17 16:19:58 -0800
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-12-17 19:28:16 -0800
commitaf0cd5a7c3cded50c25e98acd94912d17a0eb914 (patch)
treefcdf2cef80bb8846a8171333e78425abf0c3a326
parentbd6cba53c524dccf72900435d29722b22f61d835 (diff)
downloadlinux-af0cd5a7c3cded50c25e98acd94912d17a0eb914.tar.bz2
mm/sparse.c: check the return value of sparse_index_alloc()
Since sparse_index_alloc() can return NULL on memory allocation failure, we must deal with the failure condition when calling it. Signed-off-by: WANG Cong <xiyou.wangcong@gmail.com> Cc: Christoph Lameter <clameter@sgi.com> Cc: Rik van Riel <riel@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--mm/sparse.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/mm/sparse.c b/mm/sparse.c
index e06f514fe04f..d245e59048a8 100644
--- a/mm/sparse.c
+++ b/mm/sparse.c
@@ -83,6 +83,8 @@ static int __meminit sparse_index_init(unsigned long section_nr, int nid)
return -EEXIST;
section = sparse_index_alloc(nid);
+ if (!section)
+ return -ENOMEM;
/*
* This lock keeps two different sections from
* reallocating for the same index