From: Alyssa Rosenzweig Date: Tue, 7 Jul 2020 19:11:42 +0000 (-0400) Subject: panfrost: Allocate pool BOs against the pool X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6ef7c05746f5f0c5053b6e228096a776377adecf;p=mesa.git panfrost: Allocate pool BOs against the pool Instead of against the owning batch, to decouple. Signed-off-by: Alyssa Rosenzweig Part-of: --- diff --git a/src/gallium/drivers/panfrost/pan_allocate.c b/src/gallium/drivers/panfrost/pan_allocate.c index a0ca7eb0e68..4785f9a3529 100644 --- a/src/gallium/drivers/panfrost/pan_allocate.c +++ b/src/gallium/drivers/panfrost/pan_allocate.c @@ -85,11 +85,14 @@ panfrost_allocate_transient(struct panfrost_batch *batch, size_t sz) * flags to this function and keep the read/write, * fragment/vertex+tiler pools separate. */ - bo = panfrost_batch_create_bo(batch, bo_sz, 0, - PAN_BO_ACCESS_PRIVATE | - PAN_BO_ACCESS_RW | - PAN_BO_ACCESS_VERTEX_TILER | - PAN_BO_ACCESS_FRAGMENT); + bo = pan_bo_create(pan_device(batch->ctx->base.screen), bo_sz, 0); + + uintptr_t flags = PAN_BO_ACCESS_PRIVATE | + PAN_BO_ACCESS_RW | + PAN_BO_ACCESS_VERTEX_TILER | + PAN_BO_ACCESS_FRAGMENT; + + _mesa_hash_table_insert(batch->pool.bos, bo, (void *) flags); if (sz < TRANSIENT_SLAB_SIZE) { batch->pool.transient_bo = bo;