diff options
author | Lionel Landwerlin <lionel.g.landwerlin@intel.com> | 2022-12-12 15:32:22 +0200 |
---|---|---|
committer | Eric Engestrom <eric@engestrom.ch> | 2022-12-14 20:56:54 +0000 |
commit | a60641d1328786032523a7c1f007cb166ed4b9a5 (patch) | |
tree | 3a921c5584e2f982f0c08c3b4826c4742d8f67ea | |
parent | fcb34f031c2c37739cdcc5c0c5c97866ae792550 (diff) | |
download | mesa-a60641d1328786032523a7c1f007cb166ed4b9a5.tar.gz |
anv: disable Wa_1806565034 when robustImageAccess is enabled
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5711
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7859
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20280>
(cherry picked from commit a921486e2a6ca5fc873a6e2f9c61fb5bef4cf3d9)
-rw-r--r-- | .pick_status.json | 4 | ||||
-rw-r--r-- | src/intel/vulkan/anv_image.c | 5 | ||||
-rw-r--r-- | src/intel/vulkan/anv_pipeline.c | 3 |
3 files changed, 9 insertions, 3 deletions
diff --git a/.pick_status.json b/.pick_status.json index 9efef5aff43..452e70908ff 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -526,7 +526,7 @@ "description": "anv: disable Wa_1806565034 when robustImageAccess is enabled", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null }, @@ -535,7 +535,7 @@ "description": "intel/fs: make Wa_1806565034 conditional to non robust access", "nominated": false, "nomination_type": null, - "resolution": 1, + "resolution": 4, "main_sha": null, "because_sha": null }, diff --git a/src/intel/vulkan/anv_image.c b/src/intel/vulkan/anv_image.c index 7b1cba5c1b1..13d622d31f1 100644 --- a/src/intel/vulkan/anv_image.c +++ b/src/intel/vulkan/anv_image.c @@ -2611,7 +2611,10 @@ anv_image_fill_surface_state(struct anv_device *device, .mocs = anv_mocs(device, state_inout->address.bo, view_usage), .x_offset_sa = tile_x_sa, - .y_offset_sa = tile_y_sa); + .y_offset_sa = tile_y_sa, + .robust_image_access = + device->vk.enabled_features.robustImageAccess || + device->vk.enabled_features.robustImageAccess2); /* With the exception of gfx8, the bottom 12 bits of the MCS base address * are used to store other information. This should be ok, however, diff --git a/src/intel/vulkan/anv_pipeline.c b/src/intel/vulkan/anv_pipeline.c index 65ec543aed5..ea3180dfd1f 100644 --- a/src/intel/vulkan/anv_pipeline.c +++ b/src/intel/vulkan/anv_pipeline.c @@ -298,6 +298,9 @@ anv_shader_stage_to_nir(struct anv_device *device, struct brw_nir_compiler_opts opts = { .softfp64 = device->fp64_nir, + .robust_image_access = + device->vk.enabled_features.robustImageAccess || + device->vk.enabled_features.robustImageAccess2, }; brw_preprocess_nir(compiler, nir, &opts); |