Re: [PATCH v2] scsi: Prefer kmalloc_array over kmalloc involving dynamic size calculations

From: Bhanu Seshu Kumar Valluri

Date: Mon Nov 24 2025 - 11:57:59 EST


On 07/10/25 12:23, Bhanu Seshu Kumar Valluri wrote:
> As a best practice use kmalloc_array to safely calculate dynamic object
> sizes without overflow.
>
> Acked-by: Don Brace <don.brace@xxxxxxxxxxxxx>
> Signed-off-by: Bhanu Seshu Kumar Valluri <bhanuseshukumar@xxxxxxxxx>
> ---
> Note: The patch is tested for compilation.
> Change log:
> v1->v2:
> Updated commit message to refelect correct intention of the patch to
> address James Bottomley review in v1.
> v1 Link : https://lore.kernel.org/all/20251001113935.52596-1-bhanuseshukumar@xxxxxxxxx/
> drivers/scsi/smartpqi/smartpqi_init.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
> index 03c97e60d36f..19b0075eb256 100644
> --- a/drivers/scsi/smartpqi/smartpqi_init.c
> +++ b/drivers/scsi/smartpqi/smartpqi_init.c
> @@ -8936,7 +8936,7 @@ static int pqi_host_alloc_mem(struct pqi_ctrl_info *ctrl_info,
> if (sg_count == 0 || sg_count > PQI_HOST_MAX_SG_DESCRIPTORS)
> goto out;
>
> - host_memory_descriptor->host_chunk_virt_address = kmalloc(sg_count * sizeof(void *), GFP_KERNEL);
> + host_memory_descriptor->host_chunk_virt_address = kmalloc_array(sg_count, sizeof(void *), GFP_KERNEL);
> if (!host_memory_descriptor->host_chunk_virt_address)
> goto out;
>

Hi,

I just wanted to check if you had a chance to review it or if any changes are needed from my side.

Regards,
Bhanu Seshu Kumar Valluri