soc: ti: ti_sci_pm_domains: Check for null return of devm_kcalloc
authorQintaoShen <unSimple1993@163.com>
Thu, 24 Mar 2022 07:44:03 +0000 (15:44 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 9 Jun 2022 08:22:41 +0000 (10:22 +0200)
[ Upstream commit ba56291e297d28aa6eb82c5c1964fae2d7594746 ]

The allocation funciton devm_kcalloc may fail and return a null pointer,
which would cause a null-pointer dereference later.
It might be better to check it and directly return -ENOMEM just like the
usage of devm_kcalloc in previous code.

Signed-off-by: QintaoShen <unSimple1993@163.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Link: https://lore.kernel.org/r/1648107843-29077-1-git-send-email-unSimple1993@163.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/soc/ti/ti_sci_pm_domains.c

index 8afb3f4..a33ec7e 100644 (file)
@@ -183,6 +183,8 @@ static int ti_sci_pm_domain_probe(struct platform_device *pdev)
                devm_kcalloc(dev, max_id + 1,
                             sizeof(*pd_provider->data.domains),
                             GFP_KERNEL);
+       if (!pd_provider->data.domains)
+               return -ENOMEM;
 
        pd_provider->data.num_domains = max_id + 1;
        pd_provider->data.xlate = ti_sci_pd_xlate;