Re: [PATCH] iommu/vt-d: Use kcalloc() instead of kzalloc()

From: Kees Cook
Date: Mon Feb 12 2024 - 13:31:21 EST


On Sun, Feb 11, 2024 at 06:51:43PM +0100, Erick Archer wrote:
> This is an effort to get rid of all multiplications from allocation
> functions in order to prevent integer overflows [1].
>
> Here the multiplication is obviously safe because DMAR_LATENCY_NUM
> is the number of latency types defined in the "latency_type" enum.
>
> enum latency_type {
> DMAR_LATENCY_INV_IOTLB = 0,
> DMAR_LATENCY_INV_DEVTLB,
> DMAR_LATENCY_INV_IEC,
> DMAR_LATENCY_PRQ,
> DMAR_LATENCY_NUM
> };
>
> However, using kcalloc() is more appropriate [2] and improves
> readability. This patch has no effect on runtime behavior.
>
> Link: https://github.com/KSPP/linux/issues/162 [1]
> Link: https://www.kernel.org/doc/html/next/process/deprecated.html#open-coded-arithmetic-in-allocator-arguments [2]
> Signed-off-by: Erick Archer <erick.archer@xxxxxxx>

Looks reasonable.

Reviewed-by: Kees Cook <keescook@xxxxxxxxxxxx>

--
Kees Cook