mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-09 13:18:04 +02:00
panfrost: Add the tiler heap to fragment jobs
In some cases the GPU reads from the tiler heap in fragment jobs, so
always add it to GPU jobs.
Fixes faults in many applications that use multiple windows
(e.g. Firefox, plasmashell).
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4157
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8773>
(cherry picked from commit 4fec6c9448)
This commit is contained in:
parent
5f2c793c81
commit
cdebbc1846
2 changed files with 4 additions and 4 deletions
|
|
@ -1390,7 +1390,7 @@
|
|||
"description": "panfrost: Add the tiler heap to fragment jobs",
|
||||
"nominated": true,
|
||||
"nomination_type": 0,
|
||||
"resolution": 0,
|
||||
"resolution": 1,
|
||||
"master_sha": null,
|
||||
"because_sha": null
|
||||
},
|
||||
|
|
|
|||
|
|
@ -978,9 +978,9 @@ panfrost_batch_submit_ioctl(struct panfrost_batch *batch,
|
|||
panfrost_pool_get_bo_handles(&batch->invisible_pool, bo_handles + submit.bo_handle_count);
|
||||
submit.bo_handle_count += panfrost_pool_num_bos(&batch->invisible_pool);
|
||||
|
||||
/* Used by all tiler jobs (XXX: skip for compute-only) */
|
||||
if (!(reqs & PANFROST_JD_REQ_FS))
|
||||
bo_handles[submit.bo_handle_count++] = dev->tiler_heap->gem_handle;
|
||||
/* Used by all tiler jobs, and occasionally by fragment jobs.
|
||||
* (XXX: skip for compute-only) */
|
||||
bo_handles[submit.bo_handle_count++] = dev->tiler_heap->gem_handle;
|
||||
|
||||
submit.bo_handles = (u64) (uintptr_t) bo_handles;
|
||||
ret = drmIoctl(dev->fd, DRM_IOCTL_PANFROST_SUBMIT, &submit);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue