cleanup: target is called before fence_get Fixes hangs on GPU reset on Turks GPU. regression introduced by: commit dd7cfd641228abb2669d8d047d5ec377b1835900 Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxx> Date: Tue Jan 21 13:07:31 2014 +0100 drm/ttm: kill fence_lock No users are left, kill it off! :D Conversion to the reservation api is next on the list, after that the functionality can be restored with rcu. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxx> CC: stable@xxxxxxxxxxxxxxx Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=94081 Signed-off-by: Jan Vesely <jan.vesely@xxxxxxxxxxx> --- drivers/gpu/drm/radeon/radeon_display.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/radeon/radeon_display.c b/drivers/gpu/drm/radeon/radeon_display.c index 00ead8c..89a8c48 100644 --- a/drivers/gpu/drm/radeon/radeon_display.c +++ b/drivers/gpu/drm/radeon/radeon_display.c @@ -573,6 +573,7 @@ vblank_cleanup: drm_vblank_put(crtc->dev, radeon_crtc->crtc_id); pflip_cleanup: + fence_put(work->fence); if (unlikely(radeon_bo_reserve(new_rbo, false) != 0)) { DRM_ERROR("failed to reserve new rbo in error path\n"); goto cleanup; @@ -584,7 +585,6 @@ pflip_cleanup: cleanup: drm_gem_object_unreference_unlocked(&work->old_rbo->gem_base); - fence_put(work->fence); kfree(work); return r; } -- 2.1.0 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel