[PATCH linux-next] drm/amdgpu/vcn: Remove unused assignment in vcn_v4_0_stop

Khalid Masum khalid.masum.92 at gmail.com
Mon Aug 15 17:01:49 UTC 2022


On 8/15/22 22:12, Greg KH wrote:
> On Mon, Aug 15, 2022 at 09:11:18PM +0600, Khalid Masum wrote:
>> 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 at gmail.com>
>>> Sent: Monday, August 15, 2022 3:01 AM
>>> To: amd-gfx at lists.freedesktop.org; dri-devel at lists.freedesktop.org; linux-kernel at vger.kernel.org; linux-kernel-mentees at lists.linuxfoundation.org
>>> Cc: Deucher, Alexander <Alexander.Deucher at amd.com>; Koenig, Christian <Christian.Koenig at amd.com>; Pan, Xinhui <Xinhui.Pan at amd.com>; David Airlie <airlied at linux.ie>; Daniel Vetter <daniel at ffwll.ch>; Zhu, James <James.Zhu at amd.com>; Jiang, Sonny <Sonny.Jiang at amd.com>; Dong, Ruijing <Ruijing.Dong at amd.com>; Wan Jiabing <wanjiabing at vivo.com>; Liu, Leo <Leo.Liu at amd.com>; Khalid Masum <khalid.masum.92 at gmail.com>
>>> 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 at gmail.com>
>>> ---
>>>    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.
> 
> Why not fix vcn_v4_0_stop_dpg_mode() to not return anything, as it does
> not, and then remove this assignment as well, which would fix up
> everything at once to be more obvious what is happening and why.

That makes sense. I shall send a v2 this way. Thanks for your suggestion.

> 
> thanks,
> 
> greg k-h

thanks,
   -- Khalid Masum



More information about the dri-devel mailing list