EDAC, amd64: Fix improper return value
authorPan Bian <bianpan2016@163.com>
Sun, 4 Dec 2016 06:07:18 +0000 (14:07 +0800)
committerBorislav Petkov <bp@suse.de>
Sun, 4 Dec 2016 09:51:42 +0000 (10:51 +0100)
When the call to zalloc_cpumask_var() fails, returning "false" seems
improper. The real value of macro "false" is 0, and 0 means no error.
Return -ENOMEM instead.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=189071

Signed-off-by: Pan Bian <bianpan2016@163.com>
Cc: linux-edac <linux-edac@vger.kernel.org>
Link: http://lkml.kernel.org/r/1480831638-5361-1-git-send-email-bianpan201604@163.com
Signed-off-by: Borislav Petkov <bp@suse.de>
drivers/edac/amd64_edac.c

index 9a7cf3c..2602511 100644 (file)
@@ -2913,7 +2913,7 @@ static int toggle_ecc_err_reporting(struct ecc_settings *s, u16 nid, bool on)
 
        if (!zalloc_cpumask_var(&cmask, GFP_KERNEL)) {
                amd64_warn("%s: error allocating mask\n", __func__);
-               return false;
+               return -ENOMEM;
        }
 
        get_cpus_on_this_dct_cpumask(cmask, nid);