Re: [PATCH] drm/amdgpu: fix uninitialized scalar variable warning

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


The problem is that it's a hit all case and that's usually seen as bad coding style.

In other words when one branch by accident forgets to set the fw_size we wouldn't get a warning any more and just use zero.

Please rather add setting the fw_size to zero to the default branch and maybe even add a warning when that happens.


Am 23.04.24 um 10:01 schrieb Huang, Tim:
[AMD Official Use Only - General]

Hi Christian,

-----Original Message-----
From: Koenig, Christian <Christian.Koenig@xxxxxxx>
Sent: Tuesday, April 23, 2024 3:43 PM
To: Huang, Tim <Tim.Huang@xxxxxxx>; amd-gfx@xxxxxxxxxxxxxxxxxxxxx
Cc: Deucher, Alexander <Alexander.Deucher@xxxxxxx>; Koenig, Christian <Christian.Koenig@xxxxxxx>
Subject: Re: [PATCH] drm/amdgpu: fix uninitialized scalar variable warning

Am 23.04.24 um 08:28 schrieb Tim Huang:
Clear warning that uses uninitialized value fw_size.
In which case is the fw_size uninitialized and why setting it to zero helps in that case?
It's a warning that reported by the Coverity scan.  When the switch case " switch (ucode_id) " got to default and Condition "adev->firmware.load_type == AMDGPU_FW_LOAD_PSP", taking true branch,
  it reports " uses uninitialized value fw_size " by this line.
"adev->firmware.fw_size += ALIGN(fw_size, PAGE_SIZE);“

It may not happen if we call this function correctly, but it just clears the warning and looks harmless.


Signed-off-by: Tim Huang <Tim.Huang@xxxxxxx>
   drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 2 +-
   1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
index d95555dc5485..6b8a58f501d3 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
@@ -1084,7 +1084,7 @@ void amdgpu_gfx_cp_init_microcode(struct amdgpu_device *adev,
       const struct gfx_firmware_header_v2_0 *cp_hdr_v2_0;
       struct amdgpu_firmware_info *info = NULL;
       const struct firmware *ucode_fw;
-     unsigned int fw_size;
+     unsigned int fw_size = 0;

       switch (ucode_id) {

[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux