[PATCH] drm/amdgpu: Exclude PCI reset method for now.

Andrey Grodzovsky andrey.grodzovsky at amd.com
Thu Feb 24 19:26:42 UTC 2022


On 2022-02-24 13:11, Alex Deucher wrote:
> On Thu, Feb 24, 2022 at 1:05 PM Andrey Grodzovsky
> <andrey.grodzovsky at amd.com> wrote:
>> According to my investigation of the state of PCI
>> reset recently it's not working. The reason is
>> due to the fact the kernel PCI code rejects SBR
>> when there are more then one PF under same bridge
>> which we always have (at least AUDIO PF but usually
>> more) and that because SBR will reset all the PFS
>> and devices under the same bridge as you and you
>> cannot assume they support SBR.
>> Once we anble FLR support we can reenable this option as
>> FLR is doable on single PF and doens't have this
>> restriction.
>>
>> Signed-off-by: Andrey Grodzovsky <andrey.grodzovsky at amd.com>
>> ---
>>   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 5 +++++
>>   drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c    | 4 ++--
>>   2 files changed, 7 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>> index ecf8c307baf6..78cdbe3c4a9c 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>> @@ -1539,6 +1539,11 @@ static int amdgpu_device_check_arguments(struct amdgpu_device *adev)
>>                  amdgpu_sched_hw_submission = roundup_pow_of_two(amdgpu_sched_hw_submission);
>>          }
>>
>> +       if (amdgpu_reset_method > 4) {
> Validate the other side as well?
>
> if (amdgpu_reset_method < -1 || amdgpu_reset_method > 4) {
>
> With that fixed:
> Reviewed-by: Alex Deucher <alexander.deucher at amd.com>


Done

Andrey


>
>> +               dev_warn(adev->dev, "invalid option for reset method, reverting to default\n");
>> +               amdgpu_reset_method = -1;
>> +       }
>> +
>>          amdgpu_device_check_smu_prv_buffer_size(adev);
>>
>>          amdgpu_device_check_vm_size(adev);
>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
>> index e18356fff710..5a2ecc65951d 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
>> @@ -829,9 +829,9 @@ module_param_named(tmz, amdgpu_tmz, int, 0444);
>>
>>   /**
>>    * DOC: reset_method (int)
>> - * GPU reset method (-1 = auto (default), 0 = legacy, 1 = mode0, 2 = mode1, 3 = mode2, 4 = baco, 5 = pci)
>> + * GPU reset method (-1 = auto (default), 0 = legacy, 1 = mode0, 2 = mode1, 3 = mode2, 4 = baco)
>>    */
>> -MODULE_PARM_DESC(reset_method, "GPU reset method (-1 = auto (default), 0 = legacy, 1 = mode0, 2 = mode1, 3 = mode2, 4 = baco/bamaco, 5 = pci)");
>> +MODULE_PARM_DESC(reset_method, "GPU reset method (-1 = auto (default), 0 = legacy, 1 = mode0, 2 = mode1, 3 = mode2, 4 = baco/bamaco)");
>>   module_param_named(reset_method, amdgpu_reset_method, int, 0444);
>>
>>   /**
>> --
>> 2.25.1
>>


More information about the amd-gfx mailing list