powerpc: sysdev: add missing iounmap() on error in mpic_msgr_probe()
authorQinglang Miao <miaoqinglang@huawei.com>
Wed, 28 Oct 2020 09:15:51 +0000 (17:15 +0800)
committerMichael Ellerman <mpe@ellerman.id.au>
Thu, 19 Nov 2020 03:50:14 +0000 (14:50 +1100)
I noticed that iounmap() of msgr_block_addr before return from
mpic_msgr_probe() in the error handling case is missing. So use
devm_ioremap() instead of just ioremap() when remapping the message
register block, so the mapping will be automatically released on
probe failure.

Signed-off-by: Qinglang Miao <miaoqinglang@huawei.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20201028091551.136400-1-miaoqinglang@huawei.com
arch/powerpc/sysdev/mpic_msgr.c

index f6b253e..36ec0bd 100644 (file)
@@ -191,7 +191,7 @@ static int mpic_msgr_probe(struct platform_device *dev)
 
        /* IO map the message register block. */
        of_address_to_resource(np, 0, &rsrc);
-       msgr_block_addr = ioremap(rsrc.start, resource_size(&rsrc));
+       msgr_block_addr = devm_ioremap(&dev->dev, rsrc.start, resource_size(&rsrc));
        if (!msgr_block_addr) {
                dev_err(&dev->dev, "Failed to iomap MPIC message registers");
                return -EFAULT;