platform/chrome: chromeos_laptop: Use kmemdup_array

Let the kememdup_array() take care about multiplication and possible
overflows.

Signed-off-by: Yu Jiaoliang <yujiaoliang@vivo.com>
Link: https://lore.kernel.org/r/20240823024056.3031644-1-yujiaoliang@vivo.com
Signed-off-by: Tzung-Bi Shih <tzungbi@kernel.org>
This commit is contained in:
Yu Jiaoliang 2024-08-23 10:40:56 +08:00 committed by Tzung-Bi Shih
parent a1927fbbf7
commit d1b35e6d34

View File

@ -749,10 +749,9 @@ chromeos_laptop_prepare_i2c_peripherals(struct chromeos_laptop *cros_laptop,
if (!src->num_i2c_peripherals)
return 0;
i2c_peripherals = kmemdup(src->i2c_peripherals,
src->num_i2c_peripherals *
sizeof(*src->i2c_peripherals),
GFP_KERNEL);
i2c_peripherals = kmemdup_array(src->i2c_peripherals,
src->num_i2c_peripherals,
sizeof(*i2c_peripherals), GFP_KERNEL);
if (!i2c_peripherals)
return -ENOMEM;