[Public]

> -----Original Message-----
> From: Nathan Chancellor <nat...@kernel.org>
> Sent: Tuesday, July 15, 2025 7:50 PM
> To: Deucher, Alexander <alexander.deuc...@amd.com>; Koenig, Christian
> <christian.koe...@amd.com>
> Cc: Gao, Likun <likun....@amd.com>; Zhang, Hawking
> <hawking.zh...@amd.com>; amd-...@lists.freedesktop.org; dri-
> de...@lists.freedesktop.org; l...@lists.linux.dev; patc...@lists.linux.dev;
> sta...@vger.kernel.org; Nathan Chancellor <nat...@kernel.org>
> Subject: [PATCH] drm/amdgpu: Initialize data to NULL in
> imu_v12_0_program_rlc_ram()
>
> After a recent change in clang to expose uninitialized warnings from const 
> variables
> and pointers [1], there is a warning in
> imu_v12_0_program_rlc_ram() because data is passed uninitialized to
> program_imu_rlc_ram():
>
>   drivers/gpu/drm/amd/amdgpu/imu_v12_0.c:374:30: error: variable 'data' is
> uninitialized when used here [-Werror,-Wuninitialized]
>     374 |                         program_imu_rlc_ram(adev, data, (const 
> u32)size);
>         |                                                   ^~~~
>
> As this warning happens early in clang's frontend, it does not realize that 
> due to the
> assignment of r to -EINVAL, program_imu_rlc_ram() is never actually called, 
> and
> even if it were, data would not be dereferenced because size is 0.
>
> Just initialize data to NULL to silence the warning, as the commit that added
> program_imu_rlc_ram() mentioned it would eventually be used over the old 
> method,
> at which point data can be properly initialized and used.
>
> Cc: sta...@vger.kernel.org
> Closes: https://github.com/ClangBuiltLinux/linux/issues/2107
> Fixes: 56159fffaab5 ("drm/amdgpu: use new method to program rlc ram")
> Link: https://github.com/llvm/llvm-
> project/commit/2464313eef01c5b1edf0eccf57a32cdee01472c7 [1]
> Signed-off-by: Nathan Chancellor <nat...@kernel.org>

Applied.  Thanks!

Alex

> ---
>  drivers/gpu/drm/amd/amdgpu/imu_v12_0.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/imu_v12_0.c
> b/drivers/gpu/drm/amd/amdgpu/imu_v12_0.c
> index df898dbb746e..8cb6b1854d24 100644
> --- a/drivers/gpu/drm/amd/amdgpu/imu_v12_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/imu_v12_0.c
> @@ -362,7 +362,7 @@ static void program_imu_rlc_ram(struct amdgpu_device
> *adev,  static void imu_v12_0_program_rlc_ram(struct amdgpu_device *adev)  {
>       u32 reg_data, size = 0;
> -     const u32 *data;
> +     const u32 *data = NULL;
>       int r = -EINVAL;
>
>       WREG32_SOC15(GC, 0, regGFX_IMU_RLC_RAM_INDEX, 0x2);
>
> ---
> base-commit: fff8e0504499a929f26e2fb7cf7e2c9854e37b91
> change-id: 20250715-drm-amdgpu-fix-const-uninit-warning-db61fe5d135a
>
> Best regards,
> --
> Nathan Chancellor <nat...@kernel.org>

Reply via email to