[PATCH 0/1] drm/amdgpu: fix NULL pointer dereference for Renoir
From: Dirk Gouders
Date: Thu Oct 01 2020 - 16:02:11 EST
Alex Deucher <alexdeucher@xxxxxxxxx> writes:
> On Wed, Sep 30, 2020 at 4:46 PM Dirk Gouders <dirk@xxxxxxxxxxx> wrote:
>>
>> Commit c1cf79ca5ced46 (drm/amdgpu: use IP discovery table for renoir)
>> introduced a NULL pointer dereference when booting with
>> amdgpu.discovery=0.
>>
>> For amdgpu.discovery=0 that commit effectively removed the call of
>> vega10_reg_base_init(adev), so I tested the correctness of the bisect
>> session by restoring that function call for amdgpu_discovery == 0 and with
>> that change, the NULL pointer dereference does not occur:
>>
>
> Can I add your Signed-off-by?
I did not expect the diff to be seen as a proposed patch, not even that it
shows the correct fix.
Anyway, I did my best to create a hopefully acceptable patch with
some modification of the code that avoids "else" and an identical function call
at two places in the code.
I testet that patch with amdgpu.discovery={0,1} and together with the patch for the
first issue you helped me with. The result is no more call traces.
Thank you for your patient assistance with the two issues.
Dirk
> Thanks,
>
> Alex
>
>> diff --git a/drivers/gpu/drm/amd/amdgpu/soc15.c b/drivers/gpu/drm/amd/amdgpu/soc15.c
>> index 84d811b6e48b..2e93c5e1e7e6 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/soc15.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/soc15.c
>> @@ -699,7 +699,8 @@ static void soc15_reg_base_init(struct amdgpu_device *adev)
>> "fallback to legacy init method\n");
>> vega10_reg_base_init(adev);
>> }
>> - }
>> + } else
>> + vega10_reg_base_init(adev);
>> break;
>> case CHIP_VEGA20:
>> vega20_reg_base_init(adev);
>>
>> Dirk
>> _______________________________________________
>> amd-gfx mailing list
>> amd-gfx@xxxxxxxxxxxxxxxxxxxxx
>> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
Dirk Gouders (1):
drm/amdgpu: fix NULL pointer dereference for Renoir
drivers/gpu/drm/amd/amdgpu/soc15.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
--
2.26.2