From a12b11ef0e97854c8111fac2e77704ff10340eb5 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Mon, 24 May 2021 11:07:11 -0400 Subject: [PATCH] panfrost: Increase tiler_heap max allocation to 64MB We previously allocated only 16MB, but this isn't always enough. Now that we have growable (heap) on recent kernels, there's not much reason to try to shrink this allocation. Fixes OUT_OF_MEMORY fault on furmark trace. Signed-off-by: Alyssa Rosenzweig Cc: mesa-stable Part-of: (cherry picked from commit ac1ee2bebe19f7d2264325a182b6e84df5db1d16) --- .pick_status.json | 2 +- src/gallium/drivers/panfrost/ci/traces-panfrost.yml | 2 +- src/panfrost/lib/pan_props.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index ea1c19fa239..d816f6fee84 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -1390,7 +1390,7 @@ "description": "panfrost: Increase tiler_heap max allocation to 64MB", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null }, diff --git a/src/gallium/drivers/panfrost/ci/traces-panfrost.yml b/src/gallium/drivers/panfrost/ci/traces-panfrost.yml index daa4ab664b7..74844b09a88 100644 --- a/src/gallium/drivers/panfrost/ci/traces-panfrost.yml +++ b/src/gallium/drivers/panfrost/ci/traces-panfrost.yml @@ -41,7 +41,7 @@ traces: - path: gputest/furmark.trace expectations: - device: gl-panfrost-t860 - checksum: dc4ece101ed145228840d1f0654118c6 + checksum: 2bde9efdddd92c28d29f744e36a226e9 - path: gputest/triangle.trace expectations: - device: gl-panfrost-t860 diff --git a/src/panfrost/lib/pan_props.c b/src/panfrost/lib/pan_props.c index f5fae6c6123..13b404fb6a0 100644 --- a/src/panfrost/lib/pan_props.c +++ b/src/panfrost/lib/pan_props.c @@ -257,7 +257,7 @@ panfrost_open_device(void *memctx, int fd, struct panfrost_device *dev) * active for a single job chain at once, so a single heap can be * shared across batches/contextes */ - dev->tiler_heap = panfrost_bo_create(dev, 4096 * 4096, + dev->tiler_heap = panfrost_bo_create(dev, 64 * 1024 * 1024, PAN_BO_INVISIBLE | PAN_BO_GROWABLE); pthread_mutex_init(&dev->submit_lock, NULL);