From: Markus Elfring <elfr...@users.sourceforge.net>
Date: Fri, 14 Apr 2017 22:40:19 +0200

A multiplication for the size determination of a memory allocation
indicated that an array data structure should be processed.
Thus use the corresponding function "devm_kmalloc_array".

This issue was detected by using the Coccinelle software.

Signed-off-by: Markus Elfring <elfr...@users.sourceforge.net>
---
 drivers/regulator/s2mps11.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/regulator/s2mps11.c b/drivers/regulator/s2mps11.c
index b4e588cce03d..b397a2e0bcd1 100644
--- a/drivers/regulator/s2mps11.c
+++ b/drivers/regulator/s2mps11.c
@@ -1139,9 +1139,11 @@ static int s2mps11_pmic_probe(struct platform_device 
*pdev)
                return -EINVAL;
        }
 
-       s2mps11->ext_control_gpio = devm_kmalloc(&pdev->dev,
-                       sizeof(*s2mps11->ext_control_gpio) * rdev_num,
-                       GFP_KERNEL);
+       s2mps11->ext_control_gpio
+               = devm_kmalloc_array(&pdev->dev,
+                                    rdev_num,
+                                    sizeof(*s2mps11->ext_control_gpio),
+                                    GFP_KERNEL);
        if (!s2mps11->ext_control_gpio)
                return -ENOMEM;
        /*
-- 
2.12.2


Reply via email to