summaryrefslogtreecommitdiffstats
path: root/mm/vmalloc.c
diff options
context:
space:
mode:
authorKulikov Vasiliy <segooon@gmail.com>2010-08-09 17:19:58 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2010-08-09 20:45:03 -0700
commit51980ac9e72fb5f22c81b7798d65b691125d70ee (patch)
treefc12938848882bd76f7420f28d723056d9e5518e /mm/vmalloc.c
parentcc8e970c3ce4d98afa8eb02dbd2526ce57f7611a (diff)
downloadlinux-51980ac9e72fb5f22c81b7798d65b691125d70ee.tar.gz
linux-51980ac9e72fb5f22c81b7798d65b691125d70ee.tar.bz2
linux-51980ac9e72fb5f22c81b7798d65b691125d70ee.zip
mm/vmalloc.c: check kmalloc() return value
kmalloc() may fail, if so return -ENOMEM. Signed-off-by: Kulikov Vasiliy <segooon@gmail.com> Acked-by: Pekka Enberg <penberg@cs.helsinki.fi> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/vmalloc.c')
-rw-r--r--mm/vmalloc.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/mm/vmalloc.c b/mm/vmalloc.c
index 8b5e4370540b..918c51335d64 100644
--- a/mm/vmalloc.c
+++ b/mm/vmalloc.c
@@ -2437,8 +2437,11 @@ static int vmalloc_open(struct inode *inode, struct file *file)
unsigned int *ptr = NULL;
int ret;
- if (NUMA_BUILD)
+ if (NUMA_BUILD) {
ptr = kmalloc(nr_node_ids * sizeof(unsigned int), GFP_KERNEL);
+ if (ptr == NULL)
+ return -ENOMEM;
+ }
ret = seq_open(file, &vmalloc_op);
if (!ret) {
struct seq_file *m = file->private_data;