]> git.ipfire.org Git - thirdparty/kernel/linux.git/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)
committerKrzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Thu, 10 Jun 2021 07:24:37 +0000 (09:24 +0200)
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
drivers/memory/fsl_ifc.c

index a6324044a08589f2179b08cc3d8618726a89ed07..d062c2f8250f43a956d9e9a5bd8ef382a8de5e3f 100644 (file)
@@ -97,7 +97,6 @@ static int fsl_ifc_ctrl_remove(struct platform_device *dev)
        iounmap(ctrl->gregs);
 
        dev_set_drvdata(&dev->dev, NULL);
-       kfree(ctrl);
 
        return 0;
 }
@@ -209,7 +208,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;