diff --git a/.pick_status.json b/.pick_status.json index 62899c949c8..76502ac3980 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -94,7 +94,7 @@ "description": "radv: Zero initialize capture replay group handles", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null, "notes": null diff --git a/src/amd/ci/radv-navi21-aco-flakes.txt b/src/amd/ci/radv-navi21-aco-flakes.txt index 9e2e41634c1..2ff57de65bf 100644 --- a/src/amd/ci/radv-navi21-aco-flakes.txt +++ b/src/amd/ci/radv-navi21-aco-flakes.txt @@ -10,7 +10,4 @@ dEQP-VK.draw.renderpass.multi_draw.mosaic.indexed_mixed.max_draws.stride_extra_1 dEQP-VK.pipeline.*line_stipple_enable dEQP-VK.pipeline.*line_stipple_params -# New CTS flakes in 1.3.6.3 -dEQP-VK.ray_tracing_pipeline.pipeline_library.configurations.(single|multi)threaded_compilation.*_check_(all|capture_replay)_handles - dEQP-VK.query_pool.statistics_query.host_query_reset.geometry_shader_invocations.secondary.32bits_triangle_list_clear_depth diff --git a/src/amd/ci/radv-navi31-aco-flakes.txt b/src/amd/ci/radv-navi31-aco-flakes.txt index d1a8efcf746..e69de29bb2d 100644 --- a/src/amd/ci/radv-navi31-aco-flakes.txt +++ b/src/amd/ci/radv-navi31-aco-flakes.txt @@ -1,5 +0,0 @@ -# New CTS flakes in 1.3.6.3 -dEQP-VK.ray_tracing_pipeline.pipeline_library.configurations.multithreaded_compilation.*_check_all_handles -dEQP-VK.ray_tracing_pipeline.pipeline_library.configurations.multithreaded_compilation.*_check_capture_replay_handles -dEQP-VK.ray_tracing_pipeline.pipeline_library.configurations.singlethreaded_compilation.*_check_all_handles -dEQP-VK.ray_tracing_pipeline.pipeline_library.configurations.singlethreaded_compilation.*_check_capture_replay_handles diff --git a/src/amd/vulkan/radv_pipeline_rt.c b/src/amd/vulkan/radv_pipeline_rt.c index fe078b89495..36fce6d53b3 100644 --- a/src/amd/vulkan/radv_pipeline_rt.c +++ b/src/amd/vulkan/radv_pipeline_rt.c @@ -943,8 +943,12 @@ radv_GetRayTracingCaptureReplayShaderGroupHandlesKHR(VkDevice device, VkPipeline uint32_t recursive_shader = rt_pipeline->groups[firstGroup + i].recursive_shader; if (recursive_shader != VK_SHADER_UNUSED_KHR) { struct radv_shader *shader = rt_pipeline->stages[recursive_shader].shader; - if (shader) - data[i].recursive_shader_alloc = radv_serialize_shader_arena_block(shader->alloc); + if (shader) { + data[i].recursive_shader_alloc.offset = shader->alloc->offset; + data[i].recursive_shader_alloc.size = shader->alloc->size; + data[i].recursive_shader_alloc.arena_va = shader->alloc->arena->bo->va; + data[i].recursive_shader_alloc.arena_size = shader->alloc->arena->size; + } } data[i].non_recursive_idx = rt_pipeline->groups[firstGroup + i].handle.any_hit_index; } diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c index 907b50a4392..09b45ac715a 100644 --- a/src/amd/vulkan/radv_shader.c +++ b/src/amd/vulkan/radv_shader.c @@ -1312,18 +1312,6 @@ radv_free_shader_memory(struct radv_device *device, union radv_shader_arena_bloc mtx_unlock(&device->shader_arena_mutex); } -struct radv_serialized_shader_arena_block -radv_serialize_shader_arena_block(union radv_shader_arena_block *block) -{ - struct radv_serialized_shader_arena_block serialized_block = { - .offset = block->offset, - .size = block->size, - .arena_va = block->arena->bo->va, - .arena_size = block->arena->size, - }; - return serialized_block; -} - union radv_shader_arena_block * radv_replay_shader_arena_block(struct radv_device *device, const struct radv_serialized_shader_arena_block *src, void *ptr) diff --git a/src/amd/vulkan/radv_shader.h b/src/amd/vulkan/radv_shader.h index c4ceed01d1d..dbf942e28c3 100644 --- a/src/amd/vulkan/radv_shader.h +++ b/src/amd/vulkan/radv_shader.h @@ -775,8 +775,6 @@ union radv_shader_arena_block *radv_replay_shader_arena_block(struct radv_device const struct radv_serialized_shader_arena_block *src, void *ptr); -struct radv_serialized_shader_arena_block radv_serialize_shader_arena_block(union radv_shader_arena_block *block); - void radv_free_shader_memory(struct radv_device *device, union radv_shader_arena_block *alloc); struct radv_shader *radv_create_trap_handler_shader(struct radv_device *device);