From: Gerd Hoffmann Date: Mon, 10 Feb 2020 11:37:51 +0000 (+0100) Subject: drm/qxl: reorder calls in qxl_device_fini(). X-Git-Tag: v5.7-rc1~136^2~19^2~89 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=c2874a1331591f5d55cf070da01fbeac89ac264f;p=users%2Fwilly%2Fxarray.git drm/qxl: reorder calls in qxl_device_fini(). Reorder calls in qxl_device_fini(). Cleaning up gem & ttm might trigger qxl commands, so we should do that before releaseing command rings. Signed-off-by: Gerd Hoffmann Acked-by: Daniel Vetter Link: http://patchwork.freedesktop.org/patch/msgid/20200210113753.5614-2-kraxel@redhat.com --- diff --git a/drivers/gpu/drm/qxl/qxl_kms.c b/drivers/gpu/drm/qxl/qxl_kms.c index bfc1631093e9..70b20ee4741a 100644 --- a/drivers/gpu/drm/qxl/qxl_kms.c +++ b/drivers/gpu/drm/qxl/qxl_kms.c @@ -299,12 +299,12 @@ void qxl_device_fini(struct qxl_device *qdev) { qxl_bo_unref(&qdev->current_release_bo[0]); qxl_bo_unref(&qdev->current_release_bo[1]); + qxl_gem_fini(qdev); + qxl_bo_fini(qdev); flush_work(&qdev->gc_work); qxl_ring_free(qdev->command_ring); qxl_ring_free(qdev->cursor_ring); qxl_ring_free(qdev->release_ring); - qxl_gem_fini(qdev); - qxl_bo_fini(qdev); io_mapping_free(qdev->surface_mapping); io_mapping_free(qdev->vram_mapping); iounmap(qdev->ram_header);