On Tue, 2025-12-02 at 14:29 -0500, Alex Deucher wrote: > SI hardware doesn't support pasids, user mode queues, or > KIQ/MES so there is no need for this. Doing so results in > a segfault as these callbacks are non-existent for SI. > > Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/4744 > Fixes: f3854e04b708 ("drm/amdgpu: attach tlb fence to the PTs > update") > Signed-off-by: Alex Deucher <[email protected]>
Thank you Alex! Reviewed-by: Timur Kristóf <[email protected]> > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c > b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c > index 6a2ea200d90c8..0eccb31793ca7 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c > @@ -1069,7 +1069,9 @@ amdgpu_vm_tlb_flush(struct > amdgpu_vm_update_params *params, > } > > /* Prepare a TLB flush fence to be attached to PTs */ > - if (!params->unlocked) { > + if (!params->unlocked && > + /* SI doesn't support pasid or KIQ/MES */ > + params->adev->family > AMDGPU_FAMILY_SI) { > amdgpu_vm_tlb_fence_create(params->adev, vm, fence); > > /* Makes sure no PD/PT is freed before the flush */
