drivers/platform/x86/intel/pmc/tgl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
Replace devm_kzalloc() with devm_kcalloc() in pmc_core_get_tgl_lpm_reqs().
As noted in the kernel documentation [1], open-coded multiplication in
allocator arguments is discouraged because it can lead to integer
overflow.
Using devm_kcalloc() provides built-in overflow protection, making the
memory allocation safer when calculating the allocation size compared
to explicit multiplication.
[1]: https://www.kernel.org/doc/html/next/process/deprecated.html#open-coded-arithmetic-in-allocator-arguments
Signed-off-by: Qianfeng Rong <rongqianfeng@vivo.com>
---
drivers/platform/x86/intel/pmc/tgl.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/platform/x86/intel/pmc/tgl.c b/drivers/platform/x86/intel/pmc/tgl.c
index 02e731ed3391..fc5b4cacc1c6 100644
--- a/drivers/platform/x86/intel/pmc/tgl.c
+++ b/drivers/platform/x86/intel/pmc/tgl.c
@@ -273,8 +273,8 @@ void pmc_core_get_tgl_lpm_reqs(struct platform_device *pdev)
addr = (u32 *)out_obj->buffer.pointer;
- lpm_req_regs = devm_kzalloc(&pdev->dev, lpm_size * sizeof(u32),
- GFP_KERNEL);
+ lpm_req_regs = devm_kcalloc(&pdev->dev, lpm_size, sizeof(u32),
+ GFP_KERNEL);
if (!lpm_req_regs)
goto free_acpi_obj;
--
2.34.1
On Tue, 19 Aug 2025 21:51:55 +0800, Qianfeng Rong wrote: > Replace devm_kzalloc() with devm_kcalloc() in pmc_core_get_tgl_lpm_reqs(). > As noted in the kernel documentation [1], open-coded multiplication in > allocator arguments is discouraged because it can lead to integer > overflow. > > Using devm_kcalloc() provides built-in overflow protection, making the > memory allocation safer when calculating the allocation size compared > to explicit multiplication. > > [...] Thank you for your contribution, it has been applied to my local review-ilpo-next branch. Note it will show up in the public platform-drivers-x86/review-ilpo-next branch only once I've pushed my local branch there, which might take a while. The list of commits applied: [1/1] platform/x86/intel/pmc: use kcalloc() instead of kzalloc() commit: 55df384148396c0503cfc51a9c7177df6a423843 -- i.
On Tue, Aug 19, 2025 at 09:51:55PM +0800, Qianfeng Rong wrote: > Replace devm_kzalloc() with devm_kcalloc() in pmc_core_get_tgl_lpm_reqs(). > As noted in the kernel documentation [1], open-coded multiplication in > allocator arguments is discouraged because it can lead to integer > overflow. > > Using devm_kcalloc() provides built-in overflow protection, making the > memory allocation safer when calculating the allocation size compared > to explicit multiplication. > > [1]: https://www.kernel.org/doc/html/next/process/deprecated.html#open-coded-arithmetic-in-allocator-arguments > > Signed-off-by: Qianfeng Rong <rongqianfeng@vivo.com> Acked-by: David E. Box <david.e.box@intel.com> Thanks > --- > drivers/platform/x86/intel/pmc/tgl.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/platform/x86/intel/pmc/tgl.c b/drivers/platform/x86/intel/pmc/tgl.c > index 02e731ed3391..fc5b4cacc1c6 100644 > --- a/drivers/platform/x86/intel/pmc/tgl.c > +++ b/drivers/platform/x86/intel/pmc/tgl.c > @@ -273,8 +273,8 @@ void pmc_core_get_tgl_lpm_reqs(struct platform_device *pdev) > > addr = (u32 *)out_obj->buffer.pointer; > > - lpm_req_regs = devm_kzalloc(&pdev->dev, lpm_size * sizeof(u32), > - GFP_KERNEL); > + lpm_req_regs = devm_kcalloc(&pdev->dev, lpm_size, sizeof(u32), > + GFP_KERNEL); > if (!lpm_req_regs) > goto free_acpi_obj; > > -- > 2.34.1 > >
© 2016 - 2025 Red Hat, Inc.