Mesa (master): iris: Destroy transfer slab after batches

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri May 1 19:13:07 UTC 2020


Module: Mesa
Branch: master
Commit: fb95ac68552d84d5d4f587edfb38cdc1889ede87
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=fb95ac68552d84d5d4f587edfb38cdc1889ede87

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Fri May  1 10:57:15 2020 -0700

iris: Destroy transfer slab after batches

Batches are going to have an uploader in the next commit, so destroying
batches will destroy uploaders, which will unmap transfers, which will
return things to the slab allocator.  So we need to reorder destroying
the slab allocator to the end to avoid crashing.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3802>

---

 src/gallium/drivers/iris/iris_context.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/iris/iris_context.c b/src/gallium/drivers/iris/iris_context.c
index 4d161ac3f41..fcc71f739bb 100644
--- a/src/gallium/drivers/iris/iris_context.c
+++ b/src/gallium/drivers/iris/iris_context.c
@@ -202,12 +202,12 @@ iris_destroy_context(struct pipe_context *ctx)
    u_upload_destroy(ice->state.dynamic_uploader);
    u_upload_destroy(ice->query_buffer_uploader);
 
-   slab_destroy_child(&ice->transfer_pool);
-
    iris_batch_free(&ice->batches[IRIS_BATCH_RENDER]);
    iris_batch_free(&ice->batches[IRIS_BATCH_COMPUTE]);
    iris_destroy_binder(&ice->state.binder);
 
+   slab_destroy_child(&ice->transfer_pool);
+
    ralloc_free(ice);
 }
 



More information about the mesa-commit mailing list