[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