drm/amdgpu: always emit the job vm fence

We need the fence to reemit the gds switch or spm update
after a queue reset.

Fixes: a17ef94121 ("drm/amdgpu: rework ring reset backup and reemit v9")
Cc: timur.kristof@gmail.com
Cc: christian.koenig@amd.com
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
Alex Deucher 2026-06-03 15:41:28 -04:00
parent 12f86950a9
commit bc639a9ead

View File

@ -855,12 +855,10 @@ void amdgpu_vm_flush(struct amdgpu_ring *ring, struct amdgpu_job *job,
job->oa_size); job->oa_size);
} }
if (vm_flush_needed || pasid_mapping_needed || cleaner_shader_needed) { amdgpu_fence_emit(ring, job->hw_vm_fence, 0);
amdgpu_fence_emit(ring, job->hw_vm_fence, 0); fence = &job->hw_vm_fence->base;
fence = &job->hw_vm_fence->base; /* get a ref for the job */
/* get a ref for the job */ dma_fence_get(fence);
dma_fence_get(fence);
}
if (vm_flush_needed) { if (vm_flush_needed) {
mutex_lock(&id_mgr->lock); mutex_lock(&id_mgr->lock);