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

Deucher, Alexander
2024-06-04T18:28:15Z

[AMD Official Use Only - AMD Internal Distribution Only]

> -----Original Message-----
> From: Kuehling, Felix <Felix.Kuehling@amd.com>
> Sent: Tuesday, June 4, 2024 2:25 PM
> To: Armin Wolf <W_Armin@gmx.de>; Deucher, Alexander
> <Alexander.Deucher@amd.com>; Koenig, Christian
> <Christian.Koenig@amd.com>; Pan, Xinhui <Xinhui.Pan@amd.com>;
> gregkh@linuxfoundation.org; sashal@kernel.org
> Cc: stable@vger.kernel.org; bkauler@gmail.com; Zhang, Yifan
> <Yifan1.Zhang@amd.com>; Liang, Prike <Prike.Liang@amd.com>; dri-
> devel@lists.freedesktop.org; amd-gfx@lists.freedesktop.org
> Subject: Re: [PATCH] Revert "drm/amdgpu: init iommu after amdkfd device
> init"
>
>
> 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.

It's applicable to 5.15 stable only. The original patch caused a regression on 5.15 so probably should not have been applied there.

Alex

> Support for IOMMUv2 was removed from amdgpu in Linux 6.6 by:
>
> commit c99a2e7ae291e5b19b60443eb6397320ef9e8571
> Author: Alex Deucher <alexander.deucher@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@amd.com>
> Acked-by: Christian König <christian.koenig@amd.com>
> Tested-by: Mike Lothian <mike@fireburn.co.uk>
> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
>
> Regards,
> Felix
>
>
> >
> > Armin Wolf
> >
> >>
> >> Reported-by: Barry Kauler <bkauler@gmail.com>
> >> Signed-off-by: Armin Wolf <W_Armin@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
> >>
> >>