[PATCH] Revert "drm/amdgpu: init iommu after amdkfd device init"

Felix Kuehling felix.kuehling at amd.com
Tue Jun 4 18:24:59 UTC 2024


On 2024-06-03 18:19, Armin Wolf wrote:
> Am 23.05.24 um 19:30 schrieb Armin Wolf:
>
>> This reverts commit 56b522f4668167096a50c39446d6263c96219f5f.
>>
>> A user reported that this commit breaks the integrated gpu of his
>> notebook, causing a black screen. He was able to bisect the problematic
>> commit and verified that by reverting it the notebook works again.
>> He also confirmed that kernel 6.8.1 also works on his device, so the
>> upstream commit itself seems to be ok.
>>
>> An amdgpu developer (Alex Deucher) confirmed that this patch should
>> have never been ported to 5.15 in the first place, so revert this
>> commit from the 5.15 stable series.
>
> Hi,
>
> what is the status of this?

Which branch is this for? This patch won't apply to anything after Linux 
6.5. Support for IOMMUv2 was removed from amdgpu in Linux 6.6 by:

commit c99a2e7ae291e5b19b60443eb6397320ef9e8571
Author: Alex Deucher <alexander.deucher at amd.com>
Date:   Fri Jul 28 12:20:12 2023 -0400

     drm/amdkfd: drop IOMMUv2 support

     Now that we use the dGPU path for all APUs, drop the
     IOMMUv2 support.

     v2: drop the now unused queue manager functions for gfx7/8 APUs

     Reviewed-by: Felix Kuehling <Felix.Kuehling at amd.com>
     Acked-by: Christian König <christian.koenig at amd.com>
     Tested-by: Mike Lothian <mike at fireburn.co.uk>
     Signed-off-by: Alex Deucher <alexander.deucher at amd.com>

Regards,
   Felix


>
> Armin Wolf
>
>>
>> Reported-by: Barry Kauler <bkauler at gmail.com>
>> Signed-off-by: Armin Wolf <W_Armin at gmx.de>
>> ---
>>   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 8 ++++----
>>   1 file changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c 
>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>> index 222a1d9ecf16..5f6c32ec674d 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>> @@ -2487,6 +2487,10 @@ static int amdgpu_device_ip_init(struct 
>> amdgpu_device *adev)
>>       if (r)
>>           goto init_failed;
>>
>> +    r = amdgpu_amdkfd_resume_iommu(adev);
>> +    if (r)
>> +        goto init_failed;
>> +
>>       r = amdgpu_device_ip_hw_init_phase1(adev);
>>       if (r)
>>           goto init_failed;
>> @@ -2525,10 +2529,6 @@ static int amdgpu_device_ip_init(struct 
>> amdgpu_device *adev)
>>       if (!adev->gmc.xgmi.pending_reset)
>>           amdgpu_amdkfd_device_init(adev);
>>
>> -    r = amdgpu_amdkfd_resume_iommu(adev);
>> -    if (r)
>> -        goto init_failed;
>> -
>>       amdgpu_fru_get_product_info(adev);
>>
>>   init_failed:
>> -- 
>> 2.39.2
>>
>>


More information about the dri-devel mailing list