pstore: pmsg: return -ENOMEM on vmalloc failure
authorMark Salyzyn <salyzyn@google.com>
Thu, 20 Aug 2015 21:21:34 +0000 (14:21 -0700)
committerHuang, Tao <huangtao@rock-chips.com>
Tue, 27 Oct 2015 08:36:01 +0000 (16:36 +0800)
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 23385441
Change-Id: I294cb72c25bddafbba4e64fdb0a18ae46655a05d
(cherry picked from commit 62bb84973c1d55a4cc35cc4d95cb723ce0aa2c0b)

fs/pstore/pmsg.c

index db47810a92d8876a6b143d275597d50dd017a582..82a86aacf2defa73188c1d01443f2c4fdda171ec 100644 (file)
@@ -37,6 +37,8 @@ static ssize_t write_pmsg(struct file *file, const char __user *buf,
        if (buffer_size > PMSG_MAX_BOUNCE_BUFFER_SIZE)
                buffer_size = PMSG_MAX_BOUNCE_BUFFER_SIZE;
        buffer = vmalloc(buffer_size);
+       if (!buffer)
+               return -ENOMEM;
 
        mutex_lock(&pmsg_lock);
        for (i = 0; i < count; ) {