Michal Suchanek d9ea6b
From 18dbfcdedc802f9500b2c29794f22a31d27639c0 Mon Sep 17 00:00:00 2001
Michal Suchanek d9ea6b
From: Ammar Faizi <ammarfaizi2@gmail.com>
Michal Suchanek d9ea6b
Date: Sun, 26 Dec 2021 20:54:02 +0700
Michal Suchanek d9ea6b
Subject: [PATCH] powerpc/xive: Add missing null check after calling kmalloc
Michal Suchanek d9ea6b
MIME-Version: 1.0
Michal Suchanek d9ea6b
Content-Type: text/plain; charset=UTF-8
Michal Suchanek d9ea6b
Content-Transfer-Encoding: 8bit
Michal Suchanek d9ea6b
Michal Suchanek d9ea6b
References: bsc#1177437 ltc#188522 jsc#SLE-13294 git-fixes
Michal Suchanek d9ea6b
Patch-mainline: v5.17-rc1
Michal Suchanek d9ea6b
Git-commit: 18dbfcdedc802f9500b2c29794f22a31d27639c0
Michal Suchanek d9ea6b
Michal Suchanek d9ea6b
Commit 930914b7d528fc ("powerpc/xive: Add a debugfs file to dump
Michal Suchanek d9ea6b
internal XIVE state") forgot to add a null check.
Michal Suchanek d9ea6b
Michal Suchanek d9ea6b
Add it.
Michal Suchanek d9ea6b
Michal Suchanek d9ea6b
Fixes: 930914b7d528fc6b0249bffc00564100bcf6ef75 ("powerpc/xive: Add a debugfs file to dump internal XIVE state")
Michal Suchanek d9ea6b
Signed-off-by: Ammar Faizi <ammarfaizi2@gmail.com>
Michal Suchanek d9ea6b
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Michal Suchanek d9ea6b
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Michal Suchanek d9ea6b
Link: https://lore.kernel.org/r/20211226135314.251221-1-ammar.faizi@intel.com
Michal Suchanek d9ea6b
Acked-by: Michal Suchanek <msuchanek@suse.de>
Michal Suchanek d9ea6b
---
Michal Suchanek d9ea6b
 arch/powerpc/sysdev/xive/spapr.c | 3 +++
Michal Suchanek d9ea6b
 1 file changed, 3 insertions(+)
Michal Suchanek d9ea6b
Michal Suchanek d9ea6b
diff --git a/arch/powerpc/sysdev/xive/spapr.c b/arch/powerpc/sysdev/xive/spapr.c
Michal Suchanek d9ea6b
index dfc4634335cc..928f95004501 100644
Michal Suchanek d9ea6b
--- a/arch/powerpc/sysdev/xive/spapr.c
Michal Suchanek d9ea6b
+++ b/arch/powerpc/sysdev/xive/spapr.c
Michal Suchanek d9ea6b
@@ -653,6 +653,9 @@ static int xive_spapr_debug_show(struct seq_file *m, void *private)
Michal Suchanek d9ea6b
 	struct xive_irq_bitmap *xibm;
Michal Suchanek d9ea6b
 	char *buf = kmalloc(PAGE_SIZE, GFP_KERNEL);
Michal Suchanek d9ea6b
 
Michal Suchanek d9ea6b
+	if (!buf)
Michal Suchanek d9ea6b
+		return -ENOMEM;
Michal Suchanek d9ea6b
+
Michal Suchanek d9ea6b
 	list_for_each_entry(xibm, &xive_irq_bitmaps, list) {
Michal Suchanek d9ea6b
 		memset(buf, 0, PAGE_SIZE);
Michal Suchanek d9ea6b
 		bitmap_print_to_pagebuf(true, buf, xibm->bitmap, xibm->count);
Michal Suchanek d9ea6b
-- 
Michal Suchanek d9ea6b
2.31.1
Michal Suchanek d9ea6b