iris: make sure to not mix compressed vs non-compressed
This commit implements the following requirement: "Keep any UMD-recycling of compression-enabled/disabled memory separate." As additional info there are 2 related wa's for the issue: Wa_14018443005 Wa_18038669374 Cc: mesa-stable Signed-off-by: Tapani Pälli <tapani.palli@intel.com> Reviewed-by: José Roberto de Souza <jose.souza@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34499> (cherry picked from commit 6d70ec449ff3c6a3216a56c7e88fbbee3bda2291)
This commit is contained in:

committed by
Eric Engestrom

parent
d0b2f4830d
commit
2f1fd84e4d
@@ -1894,7 +1894,7 @@
|
||||
"description": "iris: make sure to not mix compressed vs non-compressed",
|
||||
"nominated": true,
|
||||
"nomination_type": 1,
|
||||
"resolution": 0,
|
||||
"resolution": 1,
|
||||
"main_sha": null,
|
||||
"because_sha": null,
|
||||
"notes": null
|
||||
|
@@ -1036,6 +1036,12 @@ alloc_bo_from_cache(struct iris_bufmgr *bufmgr,
|
||||
if (cur->real.capture != !!(flags & BO_ALLOC_CAPTURE))
|
||||
continue;
|
||||
|
||||
/* Make sure we don't recycle compressed vs non-compressed. */
|
||||
if ((iris_heap_is_compressed(flags_to_heap(bufmgr, flags))) !=
|
||||
iris_heap_is_compressed(cur->real.heap)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
/* If the last BO in the cache is busy, there are no idle BOs. Bail,
|
||||
* either falling back to a non-matching memzone, or if that fails,
|
||||
* allocating a fresh buffer.
|
||||
|
Reference in New Issue
Block a user