macintosh/macio-adb: check the return value of ioremap()
authorXie Shaowen <studentxswpy@163.com>
Tue, 2 Aug 2022 07:41:48 +0000 (15:41 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 18 Jan 2023 08:26:27 +0000 (09:26 +0100)
[ Upstream commit dbaa3105736d4d73063ea0a3b01cd7fafce924e6 ]

The function ioremap() in macio_init() can fail, so its return value
should be checked.

Fixes: 36874579dbf4c ("[PATCH] powerpc: macio-adb build fix")
Reported-by: Hacash Robot <hacashRobot@santino.com>
Signed-off-by: Xie Shaowen <studentxswpy@163.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20220802074148.3213659-1-studentxswpy@163.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/macintosh/macio-adb.c

index 9a6223add30e6dfd3f2e2ec2efa42335a7bb1a77..42f7e9f579d78112c5e6659d8d68f0c67121beb8 100644 (file)
@@ -107,6 +107,10 @@ int macio_init(void)
                return -ENXIO;
        }
        adb = ioremap(r.start, sizeof(struct adb_regs));
+       if (!adb) {
+               of_node_put(adbs);
+               return -ENOMEM;
+       }
 
        out_8(&adb->ctrl.r, 0);
        out_8(&adb->intr.r, 0);