Since 6.17.11 and 6.18.1, the patch 'attach tlb fence to the PTs update'
(commit b4a7f4e7ad2b120a94f3111f92a11520052c762d) provoked a kernel
crash on my system with an AMD SI graphic chip.
I confirm this 'validate the flush_gpu_tlb_pasid()' patch solves this issue.
J. Ph.
Le 07/01/2026 à 02:50, Liang, Prike a écrit :
[Public]
Add Jean
Regards,
Prike
-----Original Message-----
From: Liang, Prike <[email protected]>
Sent: Tuesday, January 6, 2026 9:19 PM
To: [email protected]
Cc: Deucher, Alexander <[email protected]>; Koenig, Christian
<[email protected]>; Liang, Prike <[email protected]>
Subject: [PATCH] drm/amdgpu: validate the flush_gpu_tlb_pasid()
Validate flush_gpu_tlb_pasid() availability before flushing tlb.
Signed-off-by: Prike Liang <[email protected]>
---
drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c
b/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c
index cd4acc6adc9e..f871f1693483 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c
@@ -780,6 +780,10 @@ int amdgpu_gmc_flush_gpu_tlb_pasid(struct
amdgpu_device *adev, uint16_t pasid,
return 0;
if (!adev->gmc.flush_pasid_uses_kiq || !ring->sched.ready) {
+
+ if (!adev->gmc.gmc_funcs->flush_gpu_tlb_pasid)
+ return 0;
+
if (adev->gmc.flush_tlb_needs_extra_type_2)
adev->gmc.gmc_funcs->flush_gpu_tlb_pasid(adev, pasid,
2, all_hub,
--
2.34.1