Oliver Neukum 2ec370
From e61b3125a4f036b3c6b87ffd656fc1ab00440ae9 Mon Sep 17 00:00:00 2001
Oliver Neukum 2ec370
From: Xie Shaowen <studentxswpy@163.com>
Oliver Neukum 2ec370
Date: Tue, 2 Aug 2022 15:20:33 +0800
Oliver Neukum 2ec370
Subject: [PATCH] Input: gscps2 - check return value of ioremap() in
Oliver Neukum 2ec370
 gscps2_probe()
Oliver Neukum 2ec370
Git-commit: e61b3125a4f036b3c6b87ffd656fc1ab00440ae9
Oliver Neukum 2ec370
References: git-fixes
Oliver Neukum 2ec370
Patch-mainline: v6.0-rc1
Oliver Neukum 2ec370
Oliver Neukum 2ec370
The function ioremap() in gscps2_probe() can fail, so
Oliver Neukum 2ec370
its return value should be checked.
Oliver Neukum 2ec370
Oliver Neukum 2ec370
Fixes: 4bdc0d676a643 ("remove ioremap_nocache and devm_ioremap_nocache")
Oliver Neukum 2ec370
Cc: <stable@vger.kernel.org> # v5.6+
Oliver Neukum 2ec370
Reported-by: Hacash Robot <hacashRobot@santino.com>
Oliver Neukum 2ec370
Signed-off-by: Xie Shaowen <studentxswpy@163.com>
Oliver Neukum 2ec370
Signed-off-by: Helge Deller <deller@gmx.de>
Oliver Neukum 2ec370
Signed-off-by: Oliver Neukum <oneukum@suse.com>
Oliver Neukum 2ec370
---
Oliver Neukum 2ec370
 drivers/input/serio/gscps2.c |    4 ++++
Oliver Neukum 2ec370
 1 file changed, 4 insertions(+)
Oliver Neukum 2ec370
Oliver Neukum 2ec370
--- a/drivers/input/serio/gscps2.c
Oliver Neukum 2ec370
+++ b/drivers/input/serio/gscps2.c
Oliver Neukum 2ec370
@@ -351,6 +351,10 @@ static int gscps2_probe(struct parisc_de
Oliver Neukum 2ec370
 	ps2port->port = serio;
Oliver Neukum 2ec370
 	ps2port->padev = dev;
Oliver Neukum 2ec370
 	ps2port->addr = ioremap_nocache(hpa, GSC_STATUS + 4);
Oliver Neukum 2ec370
+	if (!ps2port->addr) {
Oliver Neukum 2ec370
+		ret = -ENOMEM;
Oliver Neukum 2ec370
+		goto fail_nomem;
Oliver Neukum 2ec370
+	}
Oliver Neukum 2ec370
 	spin_lock_init(&ps2port->lock);
Oliver Neukum 2ec370
 
Oliver Neukum 2ec370
 	gscps2_reset(ps2port);