media: atomisp: replace kmalloc() with kmalloc_array() in sh_css.c
Subsystems (4)
PATCH v2 1/1 media: atomisp: replace kmalloc() with kmalloc_array() in sh_css.c
Replace arithmetic in the kmalloc() function with the kmalloc_array() function, as this calculation method is unsafe.
Signed-off-by Andrei Khomenkov <[email protected]>
---
v2:
- use 'sizeof(*ptr)' instead of explicit type
drivers/staging/media/atomisp/pci/sh_css.c | 38 ++++++++-------------- 1 file changed, 13 insertions(+), 25 deletions(-)
drivers/staging/media/atomisp/pci/sh_css.c +13 -25
@@ -5819,36 +5819,29 @@ static int ia_css_pipe_create_cas_scaler_desc_single_output( i *= max_scale_factor_per_stage; } - descr->in_info =kmalloc (descr->num_stage * -sizeof (struct ia_css_frame_info ), -GFP_KERNEL ); + descr->in_info =kmalloc_array (descr->num_stage,sizeof (*descr->in_info),GFP_KERNEL );if (!descr->in_info) { err = -ENOMEM ; goto ERR; } - descr->internal_out_info =kmalloc (descr->num_stage * -sizeof (struct ia_css_frame_info ), -GFP_KERNEL ); + descr->internal_out_info =kmalloc_array (descr->num_stage, +sizeof (*descr->internal_out_info),GFP_KERNEL );if (!descr->internal_out_info) { err = -ENOMEM ; goto ERR; } - descr->out_info =kmalloc (descr->num_stage * -sizeof (struct ia_css_frame_info ), -GFP_KERNEL ); + descr->out_info =kmalloc_array (descr->num_stage,sizeof (*descr->out_info),GFP_KERNEL );if (!descr->out_info) { err = -ENOMEM ; goto ERR; } - descr->vf_info =kmalloc (descr->num_stage * -sizeof (struct ia_css_frame_info ), -GFP_KERNEL ); + descr->vf_info =kmalloc_array (descr->num_stage,sizeof (*descr->vf_info),GFP_KERNEL );if (!descr->vf_info) { err = -ENOMEM ; goto ERR; } - descr->is_output_stage =kmalloc (descr->num_stage *sizeof (bool ), -GFP_KERNEL ); + descr->is_output_stage =kmalloc_array (descr->num_stage,sizeof (*descr->is_output_stage), +GFP_KERNEL );if (!descr->is_output_stage) { err = -ENOMEM ; goto ERR;
@@ -5974,29 +5967,24 @@ ia_css_pipe_create_cas_scaler_desc(struct ia_css_pipe *pipe, err = -ENOMEM ; goto ERR; } - descr->internal_out_info =kmalloc (descr->num_stage * -sizeof (struct ia_css_frame_info ), -GFP_KERNEL ); + descr->internal_out_info =kmalloc_array (descr->num_stage, +sizeof (*descr->internal_out_info),GFP_KERNEL );if (!descr->internal_out_info) { err = -ENOMEM ; goto ERR; } - descr->out_info =kmalloc (descr->num_stage * -sizeof (struct ia_css_frame_info ), -GFP_KERNEL ); + descr->out_info =kmalloc_array (descr->num_stage,sizeof (*descr->out_info),GFP_KERNEL );if (!descr->out_info) { err = -ENOMEM ; goto ERR; } - descr->vf_info =kmalloc (descr->num_stage * -sizeof (struct ia_css_frame_info ), -GFP_KERNEL ); + descr->vf_info =kmalloc_array (descr->num_stage,sizeof (*descr->vf_info),GFP_KERNEL );if (!descr->vf_info) { err = -ENOMEM ; goto ERR; } - descr->is_output_stage =kmalloc (descr->num_stage *sizeof (bool ), -GFP_KERNEL ); + descr->is_output_stage =kmalloc_array (descr->num_stage,sizeof (*descr->is_output_stage), +GFP_KERNEL );if (!descr->is_output_stage) { err = -ENOMEM ; goto ERR;
Quoted 2 lines · Andrei Khomenkov
Replace arithmetic in the
kmalloc()function with thekmalloc_array()function, as this calculation method is unsafe.
Why not kmalloc_objs()?
Signature · 2 lines
With Best Regards, Andy Shevchenko