diff --git a/src/gallium/drivers/iris/iris_state.c b/src/gallium/drivers/iris/iris_state.c index 0ea5205c316..878fcb5ab17 100644 --- a/src/gallium/drivers/iris/iris_state.c +++ b/src/gallium/drivers/iris/iris_state.c @@ -6982,6 +6982,7 @@ iris_upload_compute_walker(struct iris_context *ice, cw.ThreadGroupIDYDimension = grid->grid[1]; cw.ThreadGroupIDZDimension = grid->grid[2]; cw.ExecutionMask = dispatch.right_mask; + cw.PostSync.MOCS = iris_mocs(NULL, &screen->isl_dev, 0); cw.InterfaceDescriptor = (struct GENX(INTERFACE_DESCRIPTOR_DATA)) { .KernelStartPointer = KSP(shader), diff --git a/src/intel/blorp/blorp_genX_exec.h b/src/intel/blorp/blorp_genX_exec.h index 8f87fa6edf8..daa5f96906c 100644 --- a/src/intel/blorp/blorp_genX_exec.h +++ b/src/intel/blorp/blorp_genX_exec.h @@ -2140,6 +2140,7 @@ blorp_exec_compute(struct blorp_batch *batch, const struct blorp_params *params) cw.ThreadGroupIDYDimension = group_y1; cw.ThreadGroupIDZDimension = group_z1; cw.ExecutionMask = 0xffffffff; + cw.PostSync.MOCS = isl_mocs(batch->blorp->isl_dev, 0, false); uint32_t surfaces_offset = blorp_setup_binding_table(batch, params); diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c index 95c9e08fe82..3f016a8a63d 100644 --- a/src/intel/vulkan/genX_cmd_buffer.c +++ b/src/intel/vulkan/genX_cmd_buffer.c @@ -4874,6 +4874,7 @@ emit_compute_walker(struct anv_cmd_buffer *cmd_buffer, cw.ThreadGroupIDYDimension = groupCountY; cw.ThreadGroupIDZDimension = groupCountZ; cw.ExecutionMask = dispatch.right_mask; + cw.PostSync.MOCS = anv_mocs(pipeline->base.device, NULL, 0); cw.InterfaceDescriptor = (struct GENX(INTERFACE_DESCRIPTOR_DATA)) { .KernelStartPointer = cs_bin->kernel.offset, @@ -5291,6 +5292,7 @@ cmd_buffer_trace_rays(struct anv_cmd_buffer *cmd_buffer, cw.ThreadGroupIDZDimension = global_size[2]; cw.ExecutionMask = 0xff; cw.EmitInlineParameter = true; + cw.PostSync.MOCS = anv_mocs(pipeline->base.device, NULL, 0); const gl_shader_stage s = MESA_SHADER_RAYGEN; struct anv_device *device = cmd_buffer->device;