Skip to content

Type confusion error when running under UBSan #1377

@ceeac

Description

@ceeac

This occurs with, and is brobably related to commit 47d9b80.

Steps to reproduce:

  • Compile and link samples with gcc-15 with -fsanitize=undefined
  • Start any sample that is derived from vkb::VulkanSampleC, e.g. SwapchainRecreation

Result:

$ ./vulkan_samples sample swapchain_recreation
[info] Logger initialized
[info] Initializing Vulkan sample
[info] Extension VK_EXT_debug_utils available, enabling it
[info] Extension VK_KHR_surface available, enabling it
[info] Extension VK_KHR_get_physical_device_properties2 available, enabling it
[info] Extension VK_KHR_xcb_surface available, enabling it
[info] Extension VK_EXT_surface_maintenance1 available, enabling it
[info] Extension VK_KHR_get_surface_capabilities2 available, enabling it
[info] Layer VK_LAYER_KHRONOS_validation available, enabling it
[info] Found GPU: NVIDIA GeForce GTX 1080
[debug] Device supports the following extensions:
[debug]     VK_KHR_16bit_storage
[debug]     VK_KHR_8bit_storage
[debug]     VK_KHR_acceleration_structure
[debug]     VK_KHR_bind_memory2
[debug]     VK_KHR_buffer_device_address
[debug]     VK_KHR_calibrated_timestamps
[debug]     VK_KHR_copy_commands2
[debug]     VK_KHR_create_renderpass2
[debug]     VK_KHR_dedicated_allocation
[debug]     VK_KHR_deferred_host_operations
[debug]     VK_KHR_depth_stencil_resolve
[debug]     VK_KHR_descriptor_update_template
[debug]     VK_KHR_device_group
[debug]     VK_KHR_draw_indirect_count
[debug]     VK_KHR_driver_properties
[debug]     VK_KHR_dynamic_rendering
[debug]     VK_KHR_dynamic_rendering_local_read
[debug]     VK_KHR_external_fence
[debug]     VK_KHR_external_fence_fd
[debug]     VK_KHR_external_memory
[debug]     VK_KHR_external_memory_fd
[debug]     VK_KHR_external_semaphore
[debug]     VK_KHR_external_semaphore_fd
[debug]     VK_KHR_format_feature_flags2
[debug]     VK_KHR_get_memory_requirements2
[debug]     VK_KHR_global_priority
[debug]     VK_KHR_image_format_list
[debug]     VK_KHR_imageless_framebuffer
[debug]     VK_KHR_incremental_present
[debug]     VK_KHR_index_type_uint8
[debug]     VK_KHR_line_rasterization
[debug]     VK_KHR_load_store_op_none
[debug]     VK_KHR_maintenance1
[debug]     VK_KHR_maintenance2
[debug]     VK_KHR_maintenance3
[debug]     VK_KHR_maintenance4
[debug]     VK_KHR_maintenance5
[debug]     VK_KHR_maintenance6
[debug]     VK_KHR_maintenance7
[debug]     VK_KHR_map_memory2
[debug]     VK_KHR_multiview
[debug]     VK_KHR_pipeline_binary
[debug]     VK_KHR_pipeline_executable_properties
[debug]     VK_KHR_pipeline_library
[debug]     VK_KHR_present_id
[debug]     VK_KHR_present_wait
[debug]     VK_KHR_push_descriptor
[debug]     VK_KHR_ray_tracing_maintenance1
[debug]     VK_KHR_ray_tracing_pipeline
[debug]     VK_KHR_relaxed_block_layout
[debug]     VK_KHR_sampler_mirror_clamp_to_edge
[debug]     VK_KHR_sampler_ycbcr_conversion
[debug]     VK_KHR_separate_depth_stencil_layouts
[debug]     VK_KHR_shader_atomic_int64
[debug]     VK_KHR_shader_clock
[debug]     VK_KHR_shader_draw_parameters
[debug]     VK_KHR_shader_expect_assume
[debug]     VK_KHR_shader_float16_int8
[debug]     VK_KHR_shader_float_controls
[debug]     VK_KHR_shader_float_controls2
[debug]     VK_KHR_shader_integer_dot_product
[debug]     VK_KHR_shader_non_semantic_info
[debug]     VK_KHR_shader_relaxed_extended_instruction
[debug]     VK_KHR_shader_subgroup_extended_types
[debug]     VK_KHR_shader_subgroup_rotate
[debug]     VK_KHR_shader_terminate_invocation
[debug]     VK_KHR_shared_presentable_image
[debug]     VK_KHR_spirv_1_4
[debug]     VK_KHR_storage_buffer_storage_class
[debug]     VK_KHR_swapchain
[debug]     VK_KHR_swapchain_mutable_format
[debug]     VK_KHR_synchronization2
[debug]     VK_KHR_timeline_semaphore
[debug]     VK_KHR_uniform_buffer_standard_layout
[debug]     VK_KHR_variable_pointers
[debug]     VK_KHR_vertex_attribute_divisor
[debug]     VK_KHR_video_decode_h264
[debug]     VK_KHR_video_decode_h265
[debug]     VK_KHR_video_decode_queue
[debug]     VK_KHR_video_encode_h264
[debug]     VK_KHR_video_encode_h265
[debug]     VK_KHR_video_encode_quantization_map
[debug]     VK_KHR_video_encode_queue
[debug]     VK_KHR_video_maintenance1
[debug]     VK_KHR_video_maintenance2
[debug]     VK_KHR_video_queue
[debug]     VK_KHR_vulkan_memory_model
[debug]     VK_KHR_workgroup_memory_explicit_layout
[debug]     VK_KHR_zero_initialize_workgroup_memory
[debug]     VK_EXT_4444_formats
[debug]     VK_EXT_attachment_feedback_loop_dynamic_state
[debug]     VK_EXT_attachment_feedback_loop_layout
[debug]     VK_EXT_blend_operation_advanced
[debug]     VK_EXT_border_color_swizzle
[debug]     VK_EXT_buffer_device_address
[debug]     VK_EXT_calibrated_timestamps
[debug]     VK_EXT_color_write_enable
[debug]     VK_EXT_conditional_rendering
[debug]     VK_EXT_conservative_rasterization
[debug]     VK_EXT_custom_border_color
[debug]     VK_EXT_depth_bias_control
[debug]     VK_EXT_depth_clamp_control
[debug]     VK_EXT_depth_clamp_zero_one
[debug]     VK_EXT_depth_clip_control
[debug]     VK_EXT_depth_clip_enable
[debug]     VK_EXT_depth_range_unrestricted
[debug]     VK_EXT_descriptor_buffer
[debug]     VK_EXT_descriptor_indexing
[debug]     VK_EXT_device_address_binding_report
[debug]     VK_EXT_device_fault
[debug]     VK_EXT_discard_rectangles
[debug]     VK_EXT_display_control
[debug]     VK_EXT_dynamic_rendering_unused_attachments
[debug]     VK_EXT_extended_dynamic_state
[debug]     VK_EXT_extended_dynamic_state2
[debug]     VK_EXT_extended_dynamic_state3
[debug]     VK_EXT_external_memory_dma_buf
[debug]     VK_EXT_external_memory_host
[debug]     VK_EXT_fragment_shader_interlock
[debug]     VK_EXT_global_priority
[debug]     VK_EXT_global_priority_query
[debug]     VK_EXT_graphics_pipeline_library
[debug]     VK_EXT_host_image_copy
[debug]     VK_EXT_host_query_reset
[debug]     VK_EXT_image_2d_view_of_3d
[debug]     VK_EXT_image_drm_format_modifier
[debug]     VK_EXT_image_robustness
[debug]     VK_EXT_image_sliced_view_of_3d
[debug]     VK_EXT_image_view_min_lod
[debug]     VK_EXT_index_type_uint8
[debug]     VK_EXT_inline_uniform_block
[debug]     VK_EXT_legacy_vertex_attributes
[debug]     VK_EXT_line_rasterization
[debug]     VK_EXT_load_store_op_none
[debug]     VK_EXT_map_memory_placed
[debug]     VK_EXT_memory_budget
[debug]     VK_EXT_multi_draw
[debug]     VK_EXT_nested_command_buffer
[debug]     VK_EXT_non_seamless_cube_map
[debug]     VK_EXT_pci_bus_info
[debug]     VK_EXT_physical_device_drm
[debug]     VK_EXT_pipeline_creation_cache_control
[debug]     VK_EXT_pipeline_creation_feedback
[debug]     VK_EXT_pipeline_library_group_handles
[debug]     VK_EXT_pipeline_robustness
[debug]     VK_EXT_post_depth_coverage
[debug]     VK_EXT_present_mode_fifo_latest_ready
[debug]     VK_EXT_primitive_topology_list_restart
[debug]     VK_EXT_primitives_generated_query
[debug]     VK_EXT_private_data
[debug]     VK_EXT_provoking_vertex
[debug]     VK_EXT_queue_family_foreign
[debug]     VK_EXT_robustness2
[debug]     VK_EXT_sample_locations
[debug]     VK_EXT_sampler_filter_minmax
[debug]     VK_EXT_scalar_block_layout
[debug]     VK_EXT_separate_stencil_usage
[debug]     VK_EXT_shader_atomic_float
[debug]     VK_EXT_shader_demote_to_helper_invocation
[debug]     VK_EXT_shader_image_atomic_int64
[debug]     VK_EXT_shader_module_identifier
[debug]     VK_EXT_shader_object
[debug]     VK_EXT_shader_replicated_composites
[debug]     VK_EXT_shader_subgroup_ballot
[debug]     VK_EXT_shader_subgroup_vote
[debug]     VK_EXT_shader_viewport_index_layer
[debug]     VK_EXT_subgroup_size_control
[debug]     VK_EXT_swapchain_maintenance1
[debug]     VK_EXT_texel_buffer_alignment
[debug]     VK_EXT_tooling_info
[debug]     VK_EXT_transform_feedback
[debug]     VK_EXT_vertex_attribute_divisor
[debug]     VK_EXT_vertex_attribute_robustness
[debug]     VK_EXT_vertex_input_dynamic_state
[debug]     VK_EXT_ycbcr_2plane_444_formats
[debug]     VK_EXT_ycbcr_image_arrays
[debug]     VK_NV_clip_space_w_scaling
[debug]     VK_NV_copy_memory_indirect
[debug]     VK_NV_coverage_reduction_mode
[debug]     VK_NV_dedicated_allocation
[debug]     VK_NV_dedicated_allocation_image_aliasing
[debug]     VK_NV_descriptor_pool_overallocation
[debug]     VK_NV_device_diagnostic_checkpoints
[debug]     VK_NV_device_diagnostics_config
[debug]     VK_NV_device_generated_commands
[debug]     VK_NV_device_generated_commands_compute
[debug]     VK_NV_disk_cache_utils
[debug]     VK_NV_fill_rectangle
[debug]     VK_NV_fragment_coverage_to_color
[debug]     VK_NV_framebuffer_mixed_samples
[debug]     VK_NV_geometry_shader_passthrough
[debug]     VK_NV_inherited_viewport_scissor
[debug]     VK_NV_internal_nvpresent
[debug]     VK_NV_linear_color_attachment
[debug]     VK_NV_low_latency
[debug]     VK_NV_low_latency2
[debug]     VK_NV_memory_decompression
[debug]     VK_NV_present_metering
[debug]     VK_NV_raw_access_chains
[debug]     VK_NV_ray_tracing
[debug]     VK_NV_ray_tracing_invocation_reorder
[debug]     VK_NV_sample_mask_override_coverage
[debug]     VK_NV_shader_atomic_float16_vector
[debug]     VK_NV_shader_sm_builtins
[debug]     VK_NV_shader_subgroup_partitioned
[debug]     VK_NV_viewport_array2
[debug]     VK_NV_viewport_swizzle
[debug]     VK_NVX_multiview_per_view_attributes
[debug]     VK_AMD_buffer_marker
[debug]     VK_GOOGLE_hlsl_functionality1
[debug]     VK_GOOGLE_user_type
[info] Found GPU: llvmpipe (LLVM 20.1.8, 256 bits)
[debug] Device supports the following extensions:
[debug]     VK_KHR_8bit_storage
[debug]     VK_KHR_16bit_storage
[debug]     VK_KHR_acceleration_structure
[debug]     VK_KHR_bind_memory2
[debug]     VK_KHR_buffer_device_address
[debug]     VK_KHR_compute_shader_derivatives
[debug]     VK_KHR_copy_commands2
[debug]     VK_KHR_create_renderpass2
[debug]     VK_KHR_dedicated_allocation
[debug]     VK_KHR_deferred_host_operations
[debug]     VK_KHR_depth_stencil_resolve
[debug]     VK_KHR_descriptor_update_template
[debug]     VK_KHR_device_group
[debug]     VK_KHR_draw_indirect_count
[debug]     VK_KHR_driver_properties
[debug]     VK_KHR_dynamic_rendering
[debug]     VK_KHR_dynamic_rendering_local_read
[debug]     VK_KHR_external_fence
[debug]     VK_KHR_external_fence_fd
[debug]     VK_KHR_external_memory
[debug]     VK_KHR_external_memory_fd
[debug]     VK_KHR_external_semaphore
[debug]     VK_KHR_external_semaphore_fd
[debug]     VK_KHR_format_feature_flags2
[debug]     VK_KHR_get_memory_requirements2
[debug]     VK_KHR_global_priority
[debug]     VK_KHR_image_format_list
[debug]     VK_KHR_imageless_framebuffer
[debug]     VK_KHR_incremental_present
[debug]     VK_KHR_index_type_uint8
[debug]     VK_KHR_line_rasterization
[debug]     VK_KHR_load_store_op_none
[debug]     VK_KHR_maintenance1
[debug]     VK_KHR_maintenance2
[debug]     VK_KHR_maintenance3
[debug]     VK_KHR_maintenance4
[debug]     VK_KHR_maintenance5
[debug]     VK_KHR_maintenance6
[debug]     VK_KHR_maintenance7
[debug]     VK_KHR_maintenance8
[debug]     VK_KHR_map_memory2
[debug]     VK_KHR_multiview
[debug]     VK_KHR_pipeline_library
[debug]     VK_KHR_push_descriptor
[debug]     VK_KHR_ray_query
[debug]     VK_KHR_ray_tracing_maintenance1
[debug]     VK_KHR_ray_tracing_pipeline
[debug]     VK_KHR_ray_tracing_position_fetch
[debug]     VK_KHR_relaxed_block_layout
[debug]     VK_KHR_sampler_mirror_clamp_to_edge
[debug]     VK_KHR_sampler_ycbcr_conversion
[debug]     VK_KHR_separate_depth_stencil_layouts
[debug]     VK_KHR_shader_atomic_int64
[debug]     VK_KHR_shader_clock
[debug]     VK_KHR_shader_draw_parameters
[debug]     VK_KHR_shader_expect_assume
[debug]     VK_KHR_shader_float16_int8
[debug]     VK_KHR_shader_float_controls
[debug]     VK_KHR_shader_float_controls2
[debug]     VK_KHR_shader_integer_dot_product
[debug]     VK_KHR_shader_maximal_reconvergence
[debug]     VK_KHR_shader_non_semantic_info
[debug]     VK_KHR_shader_relaxed_extended_instruction
[debug]     VK_KHR_shader_subgroup_extended_types
[debug]     VK_KHR_shader_subgroup_rotate
[debug]     VK_KHR_shader_terminate_invocation
[debug]     VK_KHR_spirv_1_4
[debug]     VK_KHR_storage_buffer_storage_class
[debug]     VK_KHR_swapchain
[debug]     VK_KHR_swapchain_mutable_format
[debug]     VK_KHR_synchronization2
[debug]     VK_KHR_timeline_semaphore
[debug]     VK_KHR_uniform_buffer_standard_layout
[debug]     VK_KHR_variable_pointers
[debug]     VK_KHR_vertex_attribute_divisor
[debug]     VK_KHR_vulkan_memory_model
[debug]     VK_KHR_zero_initialize_workgroup_memory
[debug]     VK_EXT_4444_formats
[debug]     VK_EXT_attachment_feedback_loop_dynamic_state
[debug]     VK_EXT_attachment_feedback_loop_layout
[debug]     VK_EXT_border_color_swizzle
[debug]     VK_EXT_calibrated_timestamps
[debug]     VK_EXT_color_write_enable
[debug]     VK_EXT_conditional_rendering
[debug]     VK_EXT_custom_border_color
[debug]     VK_EXT_depth_clip_control
[debug]     VK_EXT_depth_clip_enable
[debug]     VK_EXT_depth_range_unrestricted
[debug]     VK_EXT_descriptor_buffer
[debug]     VK_EXT_descriptor_indexing
[debug]     VK_EXT_device_generated_commands
[debug]     VK_EXT_dynamic_rendering_unused_attachments
[debug]     VK_EXT_extended_dynamic_state
[debug]     VK_EXT_extended_dynamic_state2
[debug]     VK_EXT_extended_dynamic_state3
[debug]     VK_EXT_external_memory_dma_buf
[debug]     VK_EXT_external_memory_host
[debug]     VK_EXT_graphics_pipeline_library
[debug]     VK_EXT_hdr_metadata
[debug]     VK_EXT_host_image_copy
[debug]     VK_EXT_host_query_reset
[debug]     VK_EXT_image_2d_view_of_3d
[debug]     VK_EXT_image_drm_format_modifier
[debug]     VK_EXT_image_robustness
[debug]     VK_EXT_image_sliced_view_of_3d
[debug]     VK_EXT_index_type_uint8
[debug]     VK_EXT_inline_uniform_block
[debug]     VK_EXT_legacy_vertex_attributes
[debug]     VK_EXT_line_rasterization
[debug]     VK_EXT_load_store_op_none
[debug]     VK_EXT_memory_budget
[debug]     VK_EXT_memory_priority
[debug]     VK_EXT_mesh_shader
[debug]     VK_EXT_multi_draw
[debug]     VK_EXT_multisampled_render_to_single_sampled
[debug]     VK_EXT_mutable_descriptor_type
[debug]     VK_EXT_nested_command_buffer
[debug]     VK_EXT_non_seamless_cube_map
[debug]     VK_EXT_pageable_device_local_memory
[debug]     VK_EXT_pipeline_creation_cache_control
[debug]     VK_EXT_pipeline_creation_feedback
[debug]     VK_EXT_pipeline_library_group_handles
[debug]     VK_EXT_pipeline_protected_access
[debug]     VK_EXT_pipeline_robustness
[debug]     VK_EXT_post_depth_coverage
[debug]     VK_EXT_primitive_topology_list_restart
[debug]     VK_EXT_primitives_generated_query
[debug]     VK_EXT_private_data
[debug]     VK_EXT_provoking_vertex
[debug]     VK_EXT_queue_family_foreign
[debug]     VK_EXT_rasterization_order_attachment_access
[debug]     VK_EXT_robustness2
[debug]     VK_EXT_sampler_filter_minmax
[debug]     VK_EXT_scalar_block_layout
[debug]     VK_EXT_separate_stencil_usage
[debug]     VK_EXT_shader_atomic_float
[debug]     VK_EXT_shader_atomic_float2
[debug]     VK_EXT_shader_demote_to_helper_invocation
[debug]     VK_EXT_shader_object
[debug]     VK_EXT_shader_replicated_composites
[debug]     VK_EXT_shader_stencil_export
[debug]     VK_EXT_shader_subgroup_ballot
[debug]     VK_EXT_shader_subgroup_vote
[debug]     VK_EXT_shader_viewport_index_layer
[debug]     VK_EXT_subgroup_size_control
[debug]     VK_EXT_swapchain_maintenance1
[debug]     VK_EXT_texel_buffer_alignment
[debug]     VK_EXT_transform_feedback
[debug]     VK_EXT_vertex_attribute_divisor
[debug]     VK_EXT_vertex_input_dynamic_state
[debug]     VK_EXT_ycbcr_2plane_444_formats
[debug]     VK_EXT_ycbcr_image_arrays
[debug]     VK_AMDX_shader_enqueue
[debug]     VK_ANDROID_external_memory_android_hardware_buffer
[debug]     VK_ARM_rasterization_order_attachment_access
[debug]     VK_GOOGLE_decorate_string
[debug]     VK_GOOGLE_hlsl_functionality1
[info] Selected GPU: N
[info] Dedicated Allocation enabled
[info] Device supports the following requested extensions:
[info]      VK_KHR_get_memory_requirements2
[info]      VK_KHR_dedicated_allocation
[info]      VK_KHR_swapchain
[info]      VK_EXT_swapchain_maintenance1
Vulkan-Samples/framework/core/hpp_queue.cpp:29:28: runtime error: member call on address 0x7cf2111ea880 which does not point to an object of type 'VulkanResource'
0x7cf2111ea880: note: object is of type 'vkb::core::Device<(vkb::BindingType)0>'
 00 00 00 00  c0 58 86 86 22 56 00 00  98 a8 1e 11 f2 7c 00 00  00 00 00 00 00 00 00 00  00 be be be
              ^~~~~~~~~~~~~~~~~~~~~~~
              vptr for 'vkb::core::Device<(vkb::BindingType)0>'

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions