diff mbox series

amd/amdgpu: use kmalloc_array to replace kmalloc with multiply

Message ID 20201118025503.102699-1-bernard@vivo.com (mailing list archive)
State New, archived
Headers show
Series amd/amdgpu: use kmalloc_array to replace kmalloc with multiply | expand

Commit Message

Bernard Zhao Nov. 18, 2020, 2:55 a.m. UTC
Fix check_patch.pl warning:
WARNING: Prefer kmalloc_array over kmalloc with multiply
+bps = kmalloc(align_space * sizeof((*data)->bps), GFP_KERNEL);
WARNING: Prefer kmalloc_array over kmalloc with multiply
+bps_bo = kmalloc(align_space * sizeof((*data)->bps_bo),
GFP_KERNEL);
kmalloc_array has multiply overflow check, which will be safer.

Signed-off-by: Bernard Zhao <bernard@vivo.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Christian König Nov. 18, 2020, 8:17 a.m. UTC | #1
Am 18.11.20 um 03:55 schrieb Bernard Zhao:
> Fix check_patch.pl warning:
> WARNING: Prefer kmalloc_array over kmalloc with multiply
> +bps = kmalloc(align_space * sizeof((*data)->bps), GFP_KERNEL);
> WARNING: Prefer kmalloc_array over kmalloc with multiply
> +bps_bo = kmalloc(align_space * sizeof((*data)->bps_bo),
> GFP_KERNEL);
> kmalloc_array has multiply overflow check, which will be safer.
>
> Signed-off-by: Bernard Zhao <bernard@vivo.com>

Not userspace controllable values, but looks cleaner anyway.

Reviewed-by: Christian König <christian.koenig@amd.com>

> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c
> index d0aea5e39531..f2a0851c804f 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c
> @@ -280,8 +280,8 @@ static int amdgpu_virt_init_ras_err_handler_data(struct amdgpu_device *adev)
>   	if (!*data)
>   		return -ENOMEM;
>   
> -	bps = kmalloc(align_space * sizeof((*data)->bps), GFP_KERNEL);
> -	bps_bo = kmalloc(align_space * sizeof((*data)->bps_bo), GFP_KERNEL);
> +	bps = kmalloc_array(align_space, sizeof((*data)->bps), GFP_KERNEL);
> +	bps_bo = kmalloc_array(align_space, sizeof((*data)->bps_bo), GFP_KERNEL);
>   
>   	if (!bps || !bps_bo) {
>   		kfree(bps);
Alex Deucher Nov. 19, 2020, 9:56 p.m. UTC | #2
Applied.  Thanks!

Alex

On Wed, Nov 18, 2020 at 3:18 AM Christian König
<christian.koenig@amd.com> wrote:
>
> Am 18.11.20 um 03:55 schrieb Bernard Zhao:
> > Fix check_patch.pl warning:
> > WARNING: Prefer kmalloc_array over kmalloc with multiply
> > +bps = kmalloc(align_space * sizeof((*data)->bps), GFP_KERNEL);
> > WARNING: Prefer kmalloc_array over kmalloc with multiply
> > +bps_bo = kmalloc(align_space * sizeof((*data)->bps_bo),
> > GFP_KERNEL);
> > kmalloc_array has multiply overflow check, which will be safer.
> >
> > Signed-off-by: Bernard Zhao <bernard@vivo.com>
>
> Not userspace controllable values, but looks cleaner anyway.
>
> Reviewed-by: Christian König <christian.koenig@amd.com>
>
> > ---
> >   drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c | 4 ++--
> >   1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c
> > index d0aea5e39531..f2a0851c804f 100644
> > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c
> > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c
> > @@ -280,8 +280,8 @@ static int amdgpu_virt_init_ras_err_handler_data(struct amdgpu_device *adev)
> >       if (!*data)
> >               return -ENOMEM;
> >
> > -     bps = kmalloc(align_space * sizeof((*data)->bps), GFP_KERNEL);
> > -     bps_bo = kmalloc(align_space * sizeof((*data)->bps_bo), GFP_KERNEL);
> > +     bps = kmalloc_array(align_space, sizeof((*data)->bps), GFP_KERNEL);
> > +     bps_bo = kmalloc_array(align_space, sizeof((*data)->bps_bo), GFP_KERNEL);
> >
> >       if (!bps || !bps_bo) {
> >               kfree(bps);
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
diff mbox series

Patch

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c
index d0aea5e39531..f2a0851c804f 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c
@@ -280,8 +280,8 @@  static int amdgpu_virt_init_ras_err_handler_data(struct amdgpu_device *adev)
 	if (!*data)
 		return -ENOMEM;
 
-	bps = kmalloc(align_space * sizeof((*data)->bps), GFP_KERNEL);
-	bps_bo = kmalloc(align_space * sizeof((*data)->bps_bo), GFP_KERNEL);
+	bps = kmalloc_array(align_space, sizeof((*data)->bps), GFP_KERNEL);
+	bps_bo = kmalloc_array(align_space, sizeof((*data)->bps_bo), GFP_KERNEL);
 
 	if (!bps || !bps_bo) {
 		kfree(bps);