OSDN Git Service

spmi: pmic-arb: fix a possible null pointer dereference
authorKiran Gunda <kgunda@codeaurora.org>
Fri, 28 Jul 2017 07:10:45 +0000 (12:40 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 28 Aug 2017 11:51:19 +0000 (13:51 +0200)
If "core" memory resource is not specified, then the driver could
end up dereferencing a null pointer. Fix this issue.

Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
Reviewed-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/spmi/spmi-pmic-arb.c

index 88fe421..bc68e08 100644 (file)
@@ -955,14 +955,14 @@ static int spmi_pmic_arb_probe(struct platform_device *pdev)
        pmic_arb->spmic = ctrl;
 
        res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "core");
-       pmic_arb->core_size = resource_size(res);
-
        core = devm_ioremap_resource(&ctrl->dev, res);
        if (IS_ERR(core)) {
                err = PTR_ERR(core);
                goto err_put_ctrl;
        }
 
+       pmic_arb->core_size = resource_size(res);
+
        pmic_arb->ppid_to_apid = devm_kcalloc(&ctrl->dev, PMIC_ARB_MAX_PPID,
                                              sizeof(*pmic_arb->ppid_to_apid),
                                              GFP_KERNEL);