[PATCH 00/35] media: Fix coccinelle warning/errors
Julia Lawall
julia.lawall at inria.fr
Tue Apr 16 00:59:10 PDT 2024
On Tue, 16 Apr 2024, Laurent Pinchart wrote:
> On Mon, Apr 15, 2024 at 11:38:46PM +0200, Niklas Söderlund wrote:
> > On 2024-04-15 23:16:55 +0200, Ricardo Ribalda wrote:
> > > On Mon, 15 Apr 2024 at 22:33, Niklas Söderlund wrote:
> > > > On 2024-04-15 21:58:58 +0200, Ricardo Ribalda wrote:
> > > > > On Mon, 15 Apr 2024 at 21:54, Laurent Pinchart 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.
>
> Ah. Mentioning that in the cover letter would have helped.
>
> > > > > 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;
> > >
> > > I was on the edge on those ones as well...
> > >
> > > Maybe we can try to fix the .cocci file to ignore that pattern?
> > > https://lore.kernel.org/lkml/20240415-minimax-v1-1-5feb20d66a79@chromium.org/T/#u
> >
> > Thanks for looking into it! I think this is a good idea.
>
> I agree, this is the first type of change I saw in the series, and it
> made me dispair for a moment :-)
>
> > > > Maybe it's better to disable this type of checks in the linter?
I would be happy to get rid of it. The person who made the semantic patch
originally expressed the opinion that maybe it could be useful sometimes,
but I always discard these patches when 0-day forwards them to me for
approval.
When it's not a 0 value, using min and max can often improve readability,
so I think it would be unfortunate to remove the semantic patch
completely.
julia
> > > >
> > > > > 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 at 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
>
More information about the linux-arm-kernel
mailing list