Re: [PATCH 00/35] media: Fix coccinelle warning/errors

Niklas Söderlund
2024-04-15T20:33:14Z

Hi Ricardo,

Thanks for cleaning up.

On 2024-04-15 21:58:58 +0200, Ricardo Ribalda wrote:
> Hi Laurent
>
> On Mon, 15 Apr 2024 at 21:54, Laurent Pinchart
> <laurent.pinchart@ideasonboard.com> wrote:
> >
> > Hi Ricardo,
> >
> > I'm afraid I won't have time to review any of this for the time being.
> > Unless you would like me to put uvcvideo reviews on hold ;-)
> >
> > Jokes aside, my first reaction was that this feels like a bit of a waste
> > of maintainer's time :-S
>
> This is part of the media-ci effort.
>
> It is definitely not the most fun patches to do or review, but someone
> has to do it :)
>
> The whole idea is that we want to get as little warnings as possible
> from the static analysers, after this patchset we almost achieve that.

I understand and I think it's a good goal to aim for zero warnings. But
some of the fixes here are IMHO not helpful, for example I find this
type of change counter productive.

- return ret < 0 ? ret : 0;
+
+ if (ret < 0)
+ return ret;
+ return 0;

Maybe it's better to disable this type of checks in the linter?

>
> It is only 2 trivial uvc patches, I can ask someone from my team to
> review it if you want and trust them ;)
>
> Regards!
>
> >
> > On Mon, Apr 15, 2024 at 07:34:17PM +0000, Ricardo Ribalda wrote:
> > > After this set is applied, these are the only warnings left:
> > > drivers/media/pci/ivtv/ivtv-fileops.c:223:4-10: preceding lock on line 267
> > > drivers/media/pci/ivtv/ivtv-fileops.c:230:3-9: preceding lock on line 267
> > > drivers/media/pci/ivtv/ivtv-fileops.c:236:4-10: preceding lock on line 267
> > > drivers/media/pci/ivtv/ivtv-fileops.c:245:3-9: preceding lock on line 267
> > > drivers/media/pci/ivtv/ivtv-fileops.c:251:3-9: preceding lock on line 267
> > > drivers/media/pci/ivtv/ivtv-fileops.c:257:3-9: preceding lock on line 267
> > > drivers/media/pci/ivtv/ivtv-fileops.c:272:3-9: preceding lock on line 267
> > > drivers/media/pci/ivtv/ivtv-fileops.c:598:4-10: preceding lock on line 627
> > > drivers/media/pci/ivtv/ivtv-fileops.c:598:4-10: preceding lock on line 689
> > > drivers/media/pci/ivtv/ivtv-fileops.c:606:3-9: preceding lock on line 627
> > > drivers/media/pci/ivtv/ivtv-fileops.c:606:3-9: preceding lock on line 689
> > > drivers/media/pci/ivtv/ivtv-fileops.c:648:3-9: preceding lock on line 627
> > > drivers/media/pci/ivtv/ivtv-fileops.c:648:3-9: preceding lock on line 689
> > > drivers/media/pci/ivtv/ivtv-fileops.c:692:4-10: preceding lock on line 689
> > > drivers/media/dvb-core/dvb_frontend.c:2897:1-7: preceding lock on line 2776
> > > drivers/media/dvb-core/dvb_frontend.c:2897:1-7: preceding lock on line 2786
> > > drivers/media/dvb-core/dvb_frontend.c:2897:1-7: preceding lock on line 2809
> > > drivers/media/dvb-frontends/stv090x.c:799:1-7: preceding lock on line 768
> > > drivers/media/usb/go7007/go7007-i2c.c:125:1-7: preceding lock on line 61
> > > drivers/media/rc/imon.c:1167:1-7: preceding lock on line 1153
> > > drivers/media/pci/cx18/cx18-scb.h:261:22-29: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_cmds.h:77:5-9: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_cmds.h:85:5-16: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_cmds.h:154:5-9: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_cmds.h:171:5-9: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_cmds.h:180:5-9: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_cmds.h:189:5-9: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_cmds.h:201:5-9: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_cmds.h:220:5-9: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_cmds.h:230:5-16: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_helper.h:764:5-15: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_helper.h:1008:43-60: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_helper.h:1014:36-46: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_helper.h:1041:5-15: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_helper.h:1088:39-51: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_helper.h:1093:5-22: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_helper.h:1144:4-8: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_helper.h:1239:4-8: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_helper.h:1267:5-9: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/qcom/venus/hfi_helper.h:1272:4-13: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/common/siano/smscoreapi.h:619:5-13: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/common/siano/smscoreapi.h:669:6-13: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/common/siano/smscoreapi.h:1049:4-8: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/common/siano/smscoreapi.h:1055:4-8: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/dvb-frontends/mxl5xx_defs.h:171:4-8: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/dvb-frontends/mxl5xx_defs.h:182:4-8: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/allegro-dvt/nal-hevc.h:102:14-22: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/media/platform/xilinx/xilinx-dma.h:100:19-22: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > > drivers/staging/media/atomisp/pci/atomisp_tpg.h:30:18-22: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> > >
> > > CI tested:
> > > https://gitlab.freedesktop.org/linux-media/media-staging/-/commit/055b5211c68e721c3a7090be5373cf44859da1a7/pipelines?ref=ribalda%2Ftest-cocci
> > >
> > > Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>
> > > ---
> > > Ricardo Ribalda (35):
> > > media: pci: mgb4: Refactor struct resources
> > > media: stb0899: Remove unreacheable code
> > > media: uvcvideo: Refactor iterators
> > > media: uvcvideo: Use max() macro
> > > media: go7007: Use min and max macros
> > > media: stm32-dcmipp: Remove redundant printk
> > > media: staging: sun6i-isp: Remove redundant printk
> > > media: dvb-frontends: tda18271c2dd: Remove casting during div
> > > media: v4l: async: refactor v4l2_async_create_ancillary_links
> > > staging: media: tegra-video: Use swap macro
> > > media: s2255: Use refcount_t instead of atomic_t for num_channels
> > > media: platform: mtk-mdp3: Use refcount_t for job_count
> > > media: common: saa7146: Use min macro
> > > media: dvb-frontends: drx39xyj: Use min macro
> > > media: netup_unidvb: Use min macro
> > > media: au0828: Use min macro
> > > media: flexcop-usb: Use min macro
> > > media: gspca: cpia1: Use min macro
> > > media: stk1160: Use min macro
> > > media: tegra-vde: Refactor timeout handling
> > > media: venus: Use div64_u64
> > > media: i2c: st-mipid02: Use the correct div function
> > > media: dvb-frontends: tda10048: Use the right div
> > > media: tc358746: Use the correct div_ function
> > > media: venus: Use the correct div_ function
> > > media: venus: Refator return path
> > > media: dib0700: Refator return path
> > > media: usb: cx231xx: Refator return path
> > > media: i2c: rdacm20: Refator return path
> > > media: i2c: et8ek8: Refator return path
> > > media: cx231xx: Refator return path
> > > media: si4713: Refator return path
> > > media: ttpci: Refator return path
> > > media: hdpvr: Refator return path
> > > media: venus: Refator return path
> > >
> > > drivers/media/common/saa7146/saa7146_hlp.c | 8 +++----
> > > drivers/media/dvb-frontends/drx39xyj/drxj.c | 9 +++-----
> > > drivers/media/dvb-frontends/stb0899_drv.c | 5 -----
> > > drivers/media/dvb-frontends/tda10048.c | 3 +--
> > > drivers/media/dvb-frontends/tda18271c2dd.c | 4 ++--
> > > drivers/media/i2c/et8ek8/et8ek8_driver.c | 4 +++-
> > > drivers/media/i2c/rdacm20.c | 5 ++++-
> > > drivers/media/i2c/st-mipid02.c | 2 +-
> > > drivers/media/i2c/tc358746.c | 3 +--
> > > drivers/media/pci/mgb4/mgb4_core.c | 4 ++--
> > > drivers/media/pci/mgb4/mgb4_regs.c | 2 +-
> > > drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c | 2 +-
> > > drivers/media/pci/ttpci/budget-core.c | 5 ++++-
> > > .../media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c | 10 ++++-----
> > > .../media/platform/mediatek/mdp3/mtk-mdp3-core.c | 6 ++---
> > > .../media/platform/mediatek/mdp3/mtk-mdp3-core.h | 2 +-
> > > .../media/platform/mediatek/mdp3/mtk-mdp3-m2m.c | 6 ++---
> > > drivers/media/platform/nvidia/tegra-vde/h264.c | 6 ++---
> > > drivers/media/platform/qcom/venus/vdec.c | 15 +++++++------
> > > drivers/media/platform/qcom/venus/venc.c | 19 +++++++++-------
> > > .../platform/st/stm32/stm32-dcmipp/dcmipp-core.c | 5 +----
> > > drivers/media/radio/si4713/radio-usb-si4713.c | 8 +++++--
> > > drivers/media/usb/au0828/au0828-video.c | 5 +----
> > > drivers/media/usb/b2c2/flexcop-usb.c | 5 +----
> > > drivers/media/usb/cx231xx/cx231xx-i2c.c | 16 +++++++++----
> > > drivers/media/usb/cx231xx/cx231xx-video.c | 10 +++++++--
> > > drivers/media/usb/dvb-usb/dib0700_core.c | 4 +++-
> > > drivers/media/usb/go7007/go7007-fw.c | 4 ++--
> > > drivers/media/usb/gspca/cpia1.c | 6 ++---
> > > drivers/media/usb/hdpvr/hdpvr-control.c | 4 +++-
> > > drivers/media/usb/s2255/s2255drv.c | 20 ++++++++---------
> > > drivers/media/usb/stk1160/stk1160-video.c | 10 ++-------
> > > drivers/media/usb/uvc/uvc_ctrl.c | 26 ++++++++++++----------
> > > drivers/media/v4l2-core/v4l2-async.c | 8 +++----
> > > drivers/staging/media/sunxi/sun6i-isp/sun6i_isp.c | 1 -
> > > drivers/staging/media/tegra-video/tegra20.c | 9 ++------
> > > 36 files changed, 132 insertions(+), 129 deletions(-)
> > > ---
> > > base-commit: 71b3ed53b08d87212fbbe51bdc3bf44eb8c462f8
> > > change-id: 20240415-fix-cocci-2df3ef22a6f7
> > >
> > > Best regards,
> >
> > --
> > Regards,
> >
> > Laurent Pinchart
>
>
>
> --
> Ricardo Ribalda

--
Kind Regards,
Niklas Söderlund