]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
iio: common: scmi_iio: use kcalloc() instead of kzalloc()
authorQianfeng Rong <rongqianfeng@vivo.com>
Tue, 19 Aug 2025 12:50:17 +0000 (20:50 +0800)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Mon, 25 Aug 2025 09:41:51 +0000 (10:41 +0100)
Replace calls of devm_kzalloc() with devm_kcalloc() in scmi_alloc_iiodev()
and scmi_iio_set_sampling_freq_avail() for safer memory allocation with
built-in overflow protection.

Similarly, use array_size() instead of explicit multiplication for
'sensor->sensor_info->intervals.count * 2'.

Signed-off-by: Qianfeng Rong <rongqianfeng@vivo.com>
Reviewed-by: Andy Shevchenko <andy@kernel.org>
Link: https://patch.msgid.link/20250819125017.635182-1-rongqianfeng@vivo.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/common/scmi_sensors/scmi_iio.c

index da516c46e057b8be283d534720b4958d4dee5162..39c61c47022a58b37168382f7645d7772636d6a9 100644 (file)
@@ -521,9 +521,9 @@ static int scmi_iio_set_sampling_freq_avail(struct iio_dev *iio_dev)
        int i;
 
        sensor->freq_avail =
-               devm_kzalloc(&iio_dev->dev,
-                            sizeof(*sensor->freq_avail) *
-                                    (sensor->sensor_info->intervals.count * 2),
+               devm_kcalloc(&iio_dev->dev,
+                            array_size(sensor->sensor_info->intervals.count, 2),
+                            sizeof(*sensor->freq_avail),
                             GFP_KERNEL);
        if (!sensor->freq_avail)
                return -ENOMEM;
@@ -597,8 +597,8 @@ scmi_alloc_iiodev(struct scmi_device *sdev,
        iiodev->info = &scmi_iio_info;
 
        iio_channels =
-               devm_kzalloc(dev,
-                            sizeof(*iio_channels) * (iiodev->num_channels),
+               devm_kcalloc(dev, iiodev->num_channels,
+                            sizeof(*iio_channels),
                             GFP_KERNEL);
        if (!iio_channels)
                return ERR_PTR(-ENOMEM);