anv: disable Wa_1806565034 when robustImageAccess is enabled
authorLionel Landwerlin <lionel.g.landwerlin@intel.com>
Mon, 12 Dec 2022 13:32:22 +0000 (15:32 +0200)
committerMarge Bot <emma+marge@anholt.net>
Tue, 13 Dec 2022 18:05:19 +0000 (18:05 +0000)
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>

src/intel/vulkan/anv_image.c
src/intel/vulkan/anv_pipeline.c

index 97a7553..1ad42e8 100644 (file)
@@ -2497,7 +2497,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,
index 6d77168..70ba8fe 100644 (file)
@@ -224,6 +224,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);