diff --git a/src/amd/vulkan/nir/radv_nir_lower_ray_queries.c b/src/amd/vulkan/nir/radv_nir_lower_ray_queries.c index 225f49ccbda..1e7a41b62ff 100644 --- a/src/amd/vulkan/nir/radv_nir_lower_ray_queries.c +++ b/src/amd/vulkan/nir/radv_nir_lower_ray_queries.c @@ -356,6 +356,10 @@ lower_rq_initialize(nir_builder *b, nir_def *index, nir_intrinsic_instr *instr, nir_def *accel_struct = instr->src[1].ssa; + /* Make sure that instance data loads don't hang in case of a miss by setting a valid initial address. */ + rq_store_var(b, index, vars->closest.instance_addr, accel_struct, 1); + rq_store_var(b, index, vars->candidate.instance_addr, accel_struct, 1); + nir_def *bvh_offset = nir_build_load_global( b, 1, 32, nir_iadd_imm(b, accel_struct, offsetof(struct radv_accel_struct_header, bvh_offset)), .access = ACCESS_NON_WRITEABLE);