Am 2021-11-22 um 7:39 a.m. schrieb Christian König: > Partially revert commit 5f319c5c21b5909abb43d8aadc92a8aa549ee443. > > First of all this is illegal use of RCU to call dma_fence_enable_sw_signaling() > since we don't hold a reference to the fence in question and can crash badly. > > Then the code doesn't seem to have the intended effect since only the > exclusive fence is handled, but the KFD fences are always added as shared fence. > > Only keep the handling to throw away the content of SVM BOs. > > Signed-off-by: Christian König <christian.koenig@xxxxxxx> Reviewed-by: Felix Kuehling <Felix.Kuehling@xxxxxxx> > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 9 --------- > 1 file changed, 9 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c > index 30b7dde496fc..b9cd32d25bc0 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c > @@ -113,17 +113,8 @@ static void amdgpu_evict_flags(struct ttm_buffer_object *bo, > > abo = ttm_to_amdgpu_bo(bo); > if (abo->flags & AMDGPU_AMDKFD_CREATE_SVM_BO) { > - struct dma_fence *fence; > - struct dma_resv *resv = &bo->base._resv; > - > - rcu_read_lock(); > - fence = rcu_dereference(resv->fence_excl); > - if (fence && !fence->ops->signaled) > - dma_fence_enable_sw_signaling(fence); > - > placement->num_placement = 0; > placement->num_busy_placement = 0; > - rcu_read_unlock(); > return; > } >