Message ID | 97bf2e6dcba166ba77a9c35e3fe7b0f20a0abf7a.1696586632.git.hverkuil-cisco@xs4all.nl |
---|---|
State | Accepted |
Commit | 545668480f7b89918f2406c36f9ae8813ac26887 |
Headers | show |
Series | media: fix smatch warnings | expand |
Hi, On 10/6/23 12:08, Hans Verkuil wrote: > This fixes two smatch warnings: > > drivers/staging/media/atomisp/pci/atomisp_cmd.c:2779 atomisp_cp_dvs_6axis_config() warn: missing unwind goto? > drivers/staging/media/atomisp/pci/atomisp_cmd.c:2878 atomisp_cp_morph_table() warn: missing unwind goto? > > Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> > CC: Hans de Goede <hdegoede@redhat.com> > --- > .../staging/media/atomisp/pci/atomisp_cmd.c | 18 ++++++++++++------ > 1 file changed, 12 insertions(+), 6 deletions(-) > > diff --git a/drivers/staging/media/atomisp/pci/atomisp_cmd.c b/drivers/staging/media/atomisp/pci/atomisp_cmd.c > index a54be2d20c58..759233a7ba50 100644 > --- a/drivers/staging/media/atomisp/pci/atomisp_cmd.c > +++ b/drivers/staging/media/atomisp/pci/atomisp_cmd.c > @@ -2771,12 +2771,16 @@ int atomisp_cp_dvs_6axis_config(struct atomisp_sub_device *asd, > css_param->dvs_6axis = NULL; > > dvs_6axis_config = ia_css_dvs2_6axis_config_allocate(stream); > - if (!dvs_6axis_config) > - return -ENOMEM; > + if (!dvs_6axis_config) { > + ret = -ENOMEM; > + goto error; > + } > } else if (!dvs_6axis_config) { > dvs_6axis_config = ia_css_dvs2_6axis_config_allocate(stream); > - if (!dvs_6axis_config) > - return -ENOMEM; > + if (!dvs_6axis_config) { > + ret = -ENOMEM; > + goto error; > + } > } > > dvs_6axis_config->exp_id = source_6axis_config->exp_id; > @@ -2874,8 +2878,10 @@ int atomisp_cp_morph_table(struct atomisp_sub_device *asd, > morph_table = atomisp_css_morph_table_allocate( > source_morph_table->width, > source_morph_table->height); > - if (!morph_table) > - return -ENOMEM; > + if (!morph_table) { > + ret = -ENOMEM; > + goto error; > + } > > for (i = 0; i < IA_CSS_MORPH_TABLE_NUM_PLANES; i++) { > if (copy_from_compatible(morph_table->coordinates_x[i], There are 2 : "morph_table = atomisp_css_morph_table_allocate(...)" statements in this function in both branches of the if (IS_ISP2401) { ... } else { ... } block, shouldn't both cases get the goto error treatment ? Otherwise this looks good to me: Reviewed-by: Hans de Goede <hdegoede@redhat.com> Regards, Hans
diff --git a/drivers/staging/media/atomisp/pci/atomisp_cmd.c b/drivers/staging/media/atomisp/pci/atomisp_cmd.c index a54be2d20c58..759233a7ba50 100644 --- a/drivers/staging/media/atomisp/pci/atomisp_cmd.c +++ b/drivers/staging/media/atomisp/pci/atomisp_cmd.c @@ -2771,12 +2771,16 @@ int atomisp_cp_dvs_6axis_config(struct atomisp_sub_device *asd, css_param->dvs_6axis = NULL; dvs_6axis_config = ia_css_dvs2_6axis_config_allocate(stream); - if (!dvs_6axis_config) - return -ENOMEM; + if (!dvs_6axis_config) { + ret = -ENOMEM; + goto error; + } } else if (!dvs_6axis_config) { dvs_6axis_config = ia_css_dvs2_6axis_config_allocate(stream); - if (!dvs_6axis_config) - return -ENOMEM; + if (!dvs_6axis_config) { + ret = -ENOMEM; + goto error; + } } dvs_6axis_config->exp_id = source_6axis_config->exp_id; @@ -2874,8 +2878,10 @@ int atomisp_cp_morph_table(struct atomisp_sub_device *asd, morph_table = atomisp_css_morph_table_allocate( source_morph_table->width, source_morph_table->height); - if (!morph_table) - return -ENOMEM; + if (!morph_table) { + ret = -ENOMEM; + goto error; + } for (i = 0; i < IA_CSS_MORPH_TABLE_NUM_PLANES; i++) { if (copy_from_compatible(morph_table->coordinates_x[i],
This fixes two smatch warnings: drivers/staging/media/atomisp/pci/atomisp_cmd.c:2779 atomisp_cp_dvs_6axis_config() warn: missing unwind goto? drivers/staging/media/atomisp/pci/atomisp_cmd.c:2878 atomisp_cp_morph_table() warn: missing unwind goto? Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> CC: Hans de Goede <hdegoede@redhat.com> --- .../staging/media/atomisp/pci/atomisp_cmd.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-)