Subject: Re: [PATCH] drm/rockchip: include rockchip_drm_drv.h

From: "Diederik de Haas" <[email-masked]>
Date: Sat, 07 Sep 2024 10:47:18 +0200

On Sat Sep 7, 2024 at 5:02 AM CEST, Min-Hua Chen wrote:
> >FWIW: I didn't see it either, but I assumed I was missing the right
> >context (i.e. patches) needed to trigger that warning.
>
> I triggered the warning by the following step:
>
> install 'sparse' first
>
> ARCH=arm64 LLVM=1 make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' mrproper defconfig all -j8

This, especially the 'LLVM' part,  is important context information
and should be part of the commit message.

I had only just started when I saw a number of sparse warnings:

  DTC     arch/arm64/boot/dts/rockchip/rk3588-edgeble-neu6a-io.dtb
  OVL     arch/arm64/boot/dts/ti/k3-j721e-evm.dtb
  OVL     arch/arm64/boot/dts/ti/k3-j721s2-evm.dtb
  OVL     arch/arm64/boot/dts/ti/k3-am654-idk.dtb
  DTC     arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3-kb.dtb
  DTC     arch/arm64/boot/dts/rockchip/rk3588-edgeble-neu6a-wifi.dtbo
  DTC     arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r3-lte.dtb
  DTC     arch/arm64/boot/dts/rockchip/rk3588-edgeble-neu6b-io.dtb
  DTC     arch/arm64/boot/dts/rockchip/rk3588-evb1-v10.dtb
  DTC     arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r9.dtb
../init/main.c:192:12: sparse: warning: symbol 'envp_init' was not declared. Should it be static?
../init/main.c:290:16: sparse: warning: cast to restricted __le32
../init/main.c:291:16: sparse: warning: cast to restricted __le32
  CHECK   ../init/do_mounts.c

And several followed, including in c-code files. So I stopped the build
and assume you've identified a or several actual issues.

I've seen several commits where changes were made because LLVM flagged
potentially problematic code, where GCC did not, so it's quite possible
you're on to something here.

But it would be helpful if the commit message said what code was
potentially problematic and why. And then the proper fix for that could
indeed be to include `rockchip_drm_drv.h`.

Cheers,
  Diederik