[AMD Official Use Only - General] If the condition was met and it came to execute vcn_4_0_stop_dpg_mode, then it would never have a chance to go for /*wait for vcn idle*/, isn't it? I still didn't see obvious purpose of this change. if (adev->pg_flags & AMD_PG_SUPPORT_VCN_DPG) { ==> r = vcn_v4_0_stop_dpg_mode(adev, i); continue; } /* wait for vcn idle */ r = SOC15_WAIT_ON_RREG(VCN, i, regUVD_STATUS, UVD_STATUS__IDLE, 0x7); Thanks Ruijing -----Original Message----- From: Khalid Masum <khalid.masum.92@xxxxxxxxx> Sent: Monday, August 15, 2022 11:11 AM To: Dong, Ruijing <Ruijing.Dong@xxxxxxx>; amd-gfx@xxxxxxxxxxxxxxxxxxxxx; dri-devel@xxxxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; linux-kernel-mentees@xxxxxxxxxxxxxxxxxxxxxxxxx Cc: Deucher, Alexander <Alexander.Deucher@xxxxxxx>; Koenig, Christian <Christian.Koenig@xxxxxxx>; Pan, Xinhui <Xinhui.Pan@xxxxxxx>; David Airlie <airlied@xxxxxxxx>; Daniel Vetter <daniel@xxxxxxxx>; Zhu, James <James.Zhu@xxxxxxx>; Jiang, Sonny <Sonny.Jiang@xxxxxxx>; Wan Jiabing <wanjiabing@xxxxxxxx>; Liu, Leo <Leo.Liu@xxxxxxx> Subject: Re: [PATCH linux-next] drm/amdgpu/vcn: Remove unused assignment in vcn_v4_0_stop On 8/15/22 20:15, Dong, Ruijing wrote: > [AMD Official Use Only - General] > > Sorry, which "r" value was overwritten? I didn't see the point of making this change. > > Thanks > Ruijing > > -----Original Message----- > From: Khalid Masum <khalid.masum.92@xxxxxxxxx> > Sent: Monday, August 15, 2022 3:01 AM > To: amd-gfx@xxxxxxxxxxxxxxxxxxxxx; dri-devel@xxxxxxxxxxxxxxxxxxxxx; > linux-kernel@xxxxxxxxxxxxxxx; > linux-kernel-mentees@xxxxxxxxxxxxxxxxxxxxxxxxx > Cc: Deucher, Alexander <Alexander.Deucher@xxxxxxx>; Koenig, Christian > <Christian.Koenig@xxxxxxx>; Pan, Xinhui <Xinhui.Pan@xxxxxxx>; David > Airlie <airlied@xxxxxxxx>; Daniel Vetter <daniel@xxxxxxxx>; Zhu, James > <James.Zhu@xxxxxxx>; Jiang, Sonny <Sonny.Jiang@xxxxxxx>; Dong, Ruijing > <Ruijing.Dong@xxxxxxx>; Wan Jiabing <wanjiabing@xxxxxxxx>; Liu, Leo > <Leo.Liu@xxxxxxx>; Khalid Masum <khalid.masum.92@xxxxxxxxx> > Subject: [PATCH linux-next] drm/amdgpu/vcn: Remove unused assignment > in vcn_v4_0_stop > > The value assigned from vcn_v4_0_stop_dbg_mode to r is overwritten before it can be used. Remove this assignment. > > Addresses-Coverity: 1504988 ("Unused value") > Fixes: 8da1170a16e4 ("drm/amdgpu: add VCN4 ip block support") > Signed-off-by: Khalid Masum <khalid.masum.92@xxxxxxxxx> > --- > drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c > b/drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c > index ca14c3ef742e..80b8a2c66b36 100644 > --- a/drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c > +++ b/drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c > @@ -1154,7 +1154,7 @@ static int vcn_v4_0_stop(struct amdgpu_device *adev) > fw_shared->sq.queue_mode |= FW_QUEUE_DPG_HOLD_OFF; > > if (adev->pg_flags & AMD_PG_SUPPORT_VCN_DPG) { > - r = vcn_v4_0_stop_dpg_mode(adev, i); > + vcn_v4_0_stop_dpg_mode(adev, i); > continue; > } > > -- > 2.37.1 > After value is overwritten soon right after the diff. See: drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c static int vcn_v4_0_stop(struct amdgpu_device *adev) { volatile struct amdgpu_vcn4_fw_shared *fw_shared; ... for (i = 0; i < adev->vcn.num_vcn_inst; ++i) { fw_shared = adev->vcn.inst[i].fw_shared.cpu_addr; fw_shared->sq.queue_mode |= FW_QUEUE_DPG_HOLD_OFF; if (adev->pg_flags & AMD_PG_SUPPORT_VCN_DPG) { r = vcn_v4_0_stop_dpg_mode(adev, i); continue; } /* wait for vcn idle */ r = SOC15_WAIT_ON_RREG(VCN, i, regUVD_STATUS, UVD_STATUS__IDLE, 0x7); Here, any value assigned to r is overwritten before it could be used. So the assignment in the true branch of the if statement here can be removed. Thanks, -- Khalid Masum