venus: enable sparse resource support on lavapipe

Now that lavapipe sparse resource support on external memory has been
fixed, expose sparse resource support from venus on lavapipe. Meanwhile,
make remaining failures explicit (failed in lavapipe as well).

This CL also drops an obsolete comment and updates expectations from
full nightly runs.

Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38074>
This commit is contained in:
Yiwei Zhang
2025-10-24 22:46:45 -07:00
committed by Marge Bot
parent 125b93595e
commit 4201613de1
4 changed files with 21 additions and 13 deletions
+6
View File
@@ -147,3 +147,9 @@ dEQP-VK.spirv_assembly.instruction.graphics.float16.arithmetic_3.acosh_vert,Cras
dEQP-VK.spirv_assembly.instruction.graphics.float16.arithmetic_4.sin_frag,Crash
dEQP-VK.spirv_assembly.instruction.graphics.float_controls2.fp16.input_args.sin_testedWithout_NotNaN_arg1_nan_arg2_one_res_nan_exec_vert,Crash
dEQP-VK.spirv_assembly.instruction.graphics.float_controls2.fp16.input_args.sinh_testedWithout_NotInf_arg1_minusInf_arg2_unused_res_minusInf_deco_frag,Crash
# Failed with native lavapipe as well with "Non-standard block shape used"
dEQP-VK.sparse_resources.image_block_shapes.2d.g8b8g8r8_422_unorm.samples_1,Fail
dEQP-VK.sparse_resources.image_block_shapes.2d.b8g8r8g8_422_unorm.samples_1,Fail
dEQP-VK.sparse_resources.image_block_shapes.2d_array.g8b8g8r8_422_unorm.samples_1,Fail
dEQP-VK.sparse_resources.image_block_shapes.2d_array.b8g8r8g8_422_unorm.samples_1,Fail
+3
View File
@@ -8,3 +8,6 @@ dEQP-VK.transform_feedback.primitives_generated_query.get.*reset.*
dEQP-VK.api.image_clearing.dedicated_allocation.clear_color_image.2d.linear.remaining_array_layers.b10g11r11_ufloat_pack32
dEQP-VK.dynamic_rendering.graphics_pipeline_library.suballocation.formats.a8b8g8r8_unorm_pack32.input.load.store.self_dep_clear_draw
dEQP-VK.dynamic_rendering.primary_cmd_buff.suballocation.formats.a8b8g8r8_unorm_pack32.input.clear.store.self_dep_draw
dEQP-VK.image.host_image_copy.draw_r32g32b32a32_sfloat_r32g32b32a32_sfloat.host_transition_host_copy.memory_to_image.transfer_src_transfer_dst.shader_read_only_optimal.optimal.0_4_4.16x16
+12 -2
View File
@@ -7,14 +7,22 @@ dEQP-VK.api.descriptor_pool.repeated_free_reset_long
dEQP-VK.api.info.image_format_properties2.2d.linear.g12x4_b12x4r12x4_2plane_422_unorm_3pack16
dEQP-VK.api.info.vulkan1p2.feature_bits_influence
dEQP-VK.binding_model.mutable_descriptor.multiple_arrays.constant_size.aliasing.update_copy.mutable_source.normal_source.pool_same_types.update_after_bind.index_constant.comp
dEQP-VK.binding_model.mutable_descriptor.multiple_arrays.constant_size.aliasing.update_write.no_source.no_source.pool_expand_types.pre_update.index_push_constant.comp
dEQP-VK.binding_model.mutable_descriptor.multiple_arrays.unbounded.aliasing.update_copy.mutable_source.host_only_source.pool_same_types.update_after_bind.index_constant.comp
dEQP-VK.binding_model.mutable_descriptor.multiple_arrays.unbounded.noaliasing.update_copy.mutable_source.normal_source.pool_same_types.pre_update.index_push_constant.comp
dEQP-VK.binding_model.mutable_descriptor.multiple_arrays.unbounded.noaliasing.update_copy.nonmutable_source.host_only_source.pool_expand_types.pre_update.index_push_constant.comp
dEQP-VK.glsl.texture_functions.query.texturesize.isampler3d_fragment
dEQP-VK.memory.requirements.core.image.regular_tiling_linear
dEQP-VK.synchronization.internally_synchronized_objects.pipeline_cache_graphics
dEQP-VK.synchronization.timeline_semaphore.device_host.write_image_compute_indirect_read_image_vertex.image_128x128_r8_unorm
dEQP-VK.glsl.texture_functions.query.texturesize.isampler3d_fragment
dEQP-VK.synchronization.timeline_semaphore.device_host.write_copy_buffer_read_ubo_compute.buffer_16384
dEQP-VK.synchronization.timeline_semaphore.device_host.write_copy_buffer_to_image_read_copy_image.image_128x128_r16g16b16a16_uint
dEQP-VK.synchronization.timeline_semaphore.device_host.write_copy_image_read_blit_image.image_64x64x8_r32_sfloat
dEQP-VK.synchronization.timeline_semaphore.device_host.write_copy_image_to_buffer_read_ssbo_vertex.buffer_262144
dEQP-VK.synchronization.timeline_semaphore.device_host.write_image_compute_indirect_read_image_vertex.image_128x128_r8_unorm
dEQP-VK.synchronization.timeline_semaphore.device_host.write_image_compute_read_image_geometry.image_128_r32_uint
dEQP-VK.synchronization.timeline_semaphore.device_host.write_image_vertex_read_copy_image.image_128x128_r16g16b16a16_uint
dEQP-VK.synchronization.timeline_semaphore.device_host.write_ssbo_vertex_read_ssbo_compute_indirect.buffer_262144
dEQP-VK.synchronization.timeline_semaphore.device_host.write_ssbo_vertex_read_ssbo_tess_control.buffer_262144
dEQP-VK.texture.explicit_lod.2d.sizes.128x128_linear_linear_mipmap_linear_clamp
dEQP-VK.texture.explicit_lod.2d.sizes.128x128_linear_linear_mipmap_nearest_clamp
dEQP-VK.texture.explicit_lod.2d.sizes.128x128_linear_linear_mipmap_nearest_repeat
@@ -37,6 +45,8 @@ dEQP-VK.ubo.random.16bit.all_per_block_buffers.8
dEQP-VK.spirv_assembly.instruction.graphics.8bit_storage.struct_mixed_types.storage_buffer_frag
# Timeout in venus-lavapipe-full
dEQP-VK.ray_query.acceleration_structures.dynamic_indexing.sparse_binding_structures.dynamic_indexing
dEQP-VK.ray_tracing_pipeline.acceleration_structures.dynamic_indexing.sparse_binding_structures.dynamic_indexing
dEQP-VK.ray_tracing_pipeline.acceleration_structures.dynamic_indexing.traditional_structures.dynamic_indexing
dEQP-VK.ray_tracing_pipeline.build.gpu.level_instances.triangles_65536_1_1
dEQP-VK.ray_tracing_pipeline.misc.cullmask_AABB_extrabits
-11
View File
@@ -849,10 +849,6 @@ vn_physical_device_init_properties(struct vn_physical_device *physical_dev)
if (vk_android_get_front_buffer_usage())
props->sharedImage = true;
/* TODO: Fix sparse binding on lavapipe. */
if (props->driverID == VK_DRIVER_ID_MESA_LLVMPIPE)
physical_dev->sparse_binding_disabled = true;
vn_physical_device_sanitize_properties(physical_dev);
}
@@ -1584,13 +1580,6 @@ static void
vn_physical_device_disable_sparse_binding(
struct vn_physical_device *physical_dev)
{
/* To support sparse binding with feedback, we require sparse binding queue
* families to also support submiting feedback commands. Any queue
* families that exclusively support sparse binding are filtered out. If a
* device only supports sparse binding with exclusive queue families that
* get filtered out then disable the feature.
*/
struct vk_features *feats = &physical_dev->base.vk.supported_features;
feats->sparseBinding = false;
feats->sparseResidencyBuffer = false;