Mesa (master): Revert "blorp/gen12: Don't use aux address if implicit CCS"
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Wed Mar 10 02:20:59 UTC 2021
Module: Mesa
Branch: master
Commit: cbd5d82bae794f323bb3d1508360afda69ca309d
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=cbd5d82bae794f323bb3d1508360afda69ca309d
Author: Mark Janes <markjanes at swizzler.org>
Date: Tue Mar 9 16:33:31 2021 -0800
Revert "blorp/gen12: Don't use aux address if implicit CCS"
This reverts commit 4dfabac493614e98ca9b388cd4eea844e30b4bd0.
The offending commit broke tens of thousands of tests in Intel's Mesa
CI. Iris asserted in iris_use_pinned_bo at:
assert(bo->kflags & EXEC_OBJECT_PINNED);
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9489>
---
src/intel/blorp/blorp_genX_exec.h | 9 ++-------
1 file changed, 2 insertions(+), 7 deletions(-)
diff --git a/src/intel/blorp/blorp_genX_exec.h b/src/intel/blorp/blorp_genX_exec.h
index 9f97af2f882..0f52b48d27b 100644
--- a/src/intel/blorp/blorp_genX_exec.h
+++ b/src/intel/blorp/blorp_genX_exec.h
@@ -1424,13 +1424,8 @@ blorp_emit_surface_state(struct blorp_batch *batch,
/* We can't reinterpret HiZ */
assert(surface->surf.format == surface->view.format);
}
-
enum isl_aux_usage aux_usage = surface->aux_usage;
- /* On gen12, implicit CCS has no aux buffer */
- bool use_aux_address = (aux_usage != ISL_AUX_USAGE_NONE) &&
- (surface->aux_addr.buffer != NULL);
-
isl_channel_mask_t write_disable_mask = 0;
if (is_render_target && GEN_GEN <= 5) {
if (color_write_disables[0])
@@ -1451,7 +1446,7 @@ blorp_emit_surface_state(struct blorp_batch *batch,
.aux_surf = &surface->aux_surf, .aux_usage = aux_usage,
.address =
blorp_get_surface_address(batch, surface->addr),
- .aux_address = use_aux_address ? 0 :
+ .aux_address = aux_usage == ISL_AUX_USAGE_NONE ? 0 :
blorp_get_surface_address(batch, surface->aux_addr),
.clear_address = !use_clear_address ? 0 :
blorp_get_surface_address(batch,
@@ -1464,7 +1459,7 @@ blorp_emit_surface_state(struct blorp_batch *batch,
blorp_surface_reloc(batch, state_offset + isl_dev->ss.addr_offset,
surface->addr, 0);
- if (use_aux_address) {
+ if (aux_usage != ISL_AUX_USAGE_NONE) {
/* On gen7 and prior, the bottom 12 bits of the MCS base address are
* used to store other information. This should be ok, however, because
* surface buffer addresses are always 4K page alinged.
More information about the mesa-commit
mailing list