aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeliang Tang <geliangtang@163.com>2015-10-20 03:39:01 -0400
committerTony Luck <tony.luck@intel.com>2015-10-21 12:27:10 -0400
commit549b39a9e7ef3eee2d0895530f277c012abc7b43 (patch)
tree742b9ce0b00b89b861b21c7c336bc848c5734a99
parent7379047d5585187d1288486d4627873170d0005a (diff)
pstore: add vmalloc error check
If vmalloc fails, make write_pmsg return -ENOMEM. Signed-off-by: Geliang Tang <geliangtang@163.com> Acked-by: Kees Cook <keescook@chromium.org> Signed-off-by: Tony Luck <tony.luck@intel.com>
-rw-r--r--fs/pstore/pmsg.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/pstore/pmsg.c b/fs/pstore/pmsg.c
index feb5dd2948b4..5a2f05a16c1e 100644
--- a/fs/pstore/pmsg.c
+++ b/fs/pstore/pmsg.c
@@ -37,6 +37,8 @@ static ssize_t write_pmsg(struct file *file, const char __user *buf,
37 if (buffer_size > PMSG_MAX_BOUNCE_BUFFER_SIZE) 37 if (buffer_size > PMSG_MAX_BOUNCE_BUFFER_SIZE)
38 buffer_size = PMSG_MAX_BOUNCE_BUFFER_SIZE; 38 buffer_size = PMSG_MAX_BOUNCE_BUFFER_SIZE;
39 buffer = vmalloc(buffer_size); 39 buffer = vmalloc(buffer_size);
40 if (!buffer)
41 return -ENOMEM;
40 42
41 mutex_lock(&pmsg_lock); 43 mutex_lock(&pmsg_lock);
42 for (i = 0; i < count; ) { 44 for (i = 0; i < count; ) {