intel/common: allocate space for at least one task urb

Fixes: c93cbc77f7 ("intel/common: Add helper for URB allocation in Mesh pipeline")
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16196>
(cherry picked from commit 3dc6a98d78)
This commit is contained in:
Marcin Ślusarz 2022-05-06 16:37:27 +02:00 committed by Dylan Baker
parent c7dce6945d
commit 02923d7685
2 changed files with 5 additions and 2 deletions

View file

@ -85,7 +85,7 @@
"description": "intel/common: allocate space for at least one task urb",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": "c93cbc77f78ac4d6c479f657e6f92952fd357211"
},

View file

@ -338,7 +338,10 @@ intel_get_mesh_urb_config(const struct intel_device_info *devinfo,
task_urb_share = task_urb_share_percentage / 100.0f;
}
const unsigned task_urb_kb = ALIGN(total_urb_kb * task_urb_share, 8);
const unsigned one_task_urb_kb = ALIGN(r.task_entry_size_64b * 64, 1024) / 1024;
const unsigned task_urb_kb = ALIGN(MAX2(total_urb_kb * task_urb_share, one_task_urb_kb), 8);
const unsigned mesh_urb_kb = total_urb_kb - task_urb_kb;
/* TODO(mesh): Could we avoid allocating URB for Mesh if rasterization is