summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2020-01-29 00:22:02 -0800
committerMarge Bot <[email protected]>2020-01-30 10:01:21 +0000
commitbdba744d700717a123232cf24647f11918fc0dcd (patch)
treefec2659935712cd536f9d664f9db8bc4bf9c9988
parentd3fa18a1fa2b36e90c52e0f5809900dadf80d83f (diff)
i965: Use brw_batch_references in tex_busy check
If the batch references the buffer, we will have to flush the batch immediately before mapping it, at which point it will be busy. (This bug has existed for a long time...even going back to BLT-era...) Fixes: 779923194c6 ("i965/tex_image: Use meta for instead of the blitter PBO TexImage and GetTexImage") Fixes: d5d4ba9139a ("i965/tex_subimage: use meta instead of the blitter for PBO TexSubImage") Reviewed-by: Lionel Landwerlin <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3616> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3616>
-rw-r--r--src/mesa/drivers/dri/i965/intel_tex_image.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/intel_tex_image.c b/src/mesa/drivers/dri/i965/intel_tex_image.c
index fba925dee5a..bc72827802c 100644
--- a/src/mesa/drivers/dri/i965/intel_tex_image.c
+++ b/src/mesa/drivers/dri/i965/intel_tex_image.c
@@ -325,7 +325,8 @@ intel_upload_tex(struct gl_context * ctx,
if (pixels == NULL && !_mesa_is_bufferobj(packing->BufferObj))
return;
- bool tex_busy = mt && brw_bo_busy(mt->bo);
+ bool tex_busy = mt &&
+ (brw_batch_references(&brw->batch, mt->bo) || brw_bo_busy(mt->bo));
if (_mesa_is_bufferobj(packing->BufferObj) || tex_busy ||
mt->aux_usage == ISL_AUX_USAGE_CCS_E) {