diff --git a/src/gallium/drivers/iris/iris_state.c b/src/gallium/drivers/iris/iris_state.c index 341cdbdb208..cf36dfa81d9 100644 --- a/src/gallium/drivers/iris/iris_state.c +++ b/src/gallium/drivers/iris/iris_state.c @@ -6700,7 +6700,8 @@ iris_upload_gpgpu_walker(struct iris_context *ice, } /* TODO: Combine subgroup-id with cbuf0 so we can push regular uniforms */ - if (stage_dirty & IRIS_STAGE_DIRTY_CS) { + if ((stage_dirty & IRIS_STAGE_DIRTY_CS) || + cs_prog_data->local_size[0] == 0 /* Variable local group size */) { uint32_t curbe_data_offset = 0; assert(cs_prog_data->push.cross_thread.dwords == 0 && cs_prog_data->push.per_thread.dwords == 1 &&