]> git.itanic.dy.fi Git - linux-stable/commitdiff
memory: fsl_ifc: fix leak of private memory on probe failure
authorKrzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Thu, 27 May 2021 15:43:22 +0000 (11:43 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 20 Jul 2021 14:17:55 +0000 (16:17 +0200)
[ Upstream commit 8e0d09b1232d0538066c40ed4c13086faccbdff6 ]

On probe error the driver should free the memory allocated for private
structure.  Fix this by using resource-managed allocation.

Fixes: a20cbdeffce2 ("powerpc/fsl: Add support for Integrated Flash Controller")
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Link: https://lore.kernel.org/r/20210527154322.81253-2-krzysztof.kozlowski@canonical.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/memory/fsl_ifc.c

index 74bbbdc584f4ae20d20d1ff0e2e94712340f1c3c..38b945eb410f31a85db44e7de3afb05bec9931e7 100644 (file)
@@ -109,7 +109,6 @@ static int fsl_ifc_ctrl_remove(struct platform_device *dev)
        iounmap(ctrl->gregs);
 
        dev_set_drvdata(&dev->dev, NULL);
-       kfree(ctrl);
 
        return 0;
 }
@@ -221,7 +220,8 @@ static int fsl_ifc_ctrl_probe(struct platform_device *dev)
 
        dev_info(&dev->dev, "Freescale Integrated Flash Controller\n");
 
-       fsl_ifc_ctrl_dev = kzalloc(sizeof(*fsl_ifc_ctrl_dev), GFP_KERNEL);
+       fsl_ifc_ctrl_dev = devm_kzalloc(&dev->dev, sizeof(*fsl_ifc_ctrl_dev),
+                                       GFP_KERNEL);
        if (!fsl_ifc_ctrl_dev)
                return -ENOMEM;