wgpu: Examples crash with "Unable to load get_semaphore_counter_value"

Description All wgpu examples crash with Unable to load get_semaphore_counter_value.

Expected vs observed behavior I expect the example to run, but it crashes instead.

Extra materials Output from running boids example:

➜  wgpu git:(master) ✗ cargo run --example boids
    Finished dev [unoptimized + debuginfo] target(s) in 0.05s
     Running `target/debug/examples/boids`
Using Intel(R) UHD Graphics 630 (CFL GT2) (Vulkan)
thread 'main' panicked at 'Unable to load get_semaphore_counter_value', /home/niklas/.cargo/registry/src/github.com-1ecc6299db9ec823/ash-0.33.3+1.2.191/src/vk/features.rs:6307:21
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread 'main' panicked at 'Unable to load wait_semaphores', /home/niklas/.cargo/registry/src/github.com-1ecc6299db9ec823/ash-0.33.3+1.2.191/src/vk/features.rs:6328:21
stack backtrace:
   0:     0x562c702c278c - std::backtrace_rs::backtrace::libunwind::trace::h3fea1eb2e0ba2ac9
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/../../backtrace/src/backtrace/libunwind.rs:90:5
   1:     0x562c702c278c - std::backtrace_rs::backtrace::trace_unsynchronized::h849d83492cbc0d59
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x562c702c278c - std::sys_common::backtrace::_print_fmt::he3179d37290f23d3
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/sys_common/backtrace.rs:67:5
   3:     0x562c702c278c - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h140f6925cad14324
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/sys_common/backtrace.rs:46:22
   4:     0x562c702e562c - core::fmt::write::h31b9cd1bedd7ea38
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/core/src/fmt/mod.rs:1150:17
   5:     0x562c702bf715 - std::io::Write::write_fmt::h1fdf66f83f70913e
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/io/mod.rs:1667:15
   6:     0x562c702c43a0 - std::sys_common::backtrace::_print::he7ac492cd19c3189
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/sys_common/backtrace.rs:49:5
   7:     0x562c702c43a0 - std::sys_common::backtrace::print::hba20f8920229d8e8
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/sys_common/backtrace.rs:36:9
   8:     0x562c702c43a0 - std::panicking::default_hook::{{closure}}::h714d63979ae18678
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panicking.rs:210:50
   9:     0x562c702c3f57 - std::panicking::default_hook::hf1afb64e69563ca8
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panicking.rs:227:9
  10:     0x562c702c4a54 - std::panicking::rust_panic_with_hook::h02231a501e274a13
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panicking.rs:624:17
  11:     0x562c7004e132 - std::panicking::begin_panic::{{closure}}::h9338eb53067779f9
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panicking.rs:544:9
  12:     0x562c7004df49 - std::sys_common::backtrace::__rust_end_short_backtrace::hba67eb45eff64f5f
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/sys_common/backtrace.rs:141:18
  13:     0x562c7004e073 - std::panicking::begin_panic::hb9d32b2c07015dda
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panicking.rs:543:12
  14:     0x562c7004925e - ash::vk::features::DeviceFnV1_2::load::wait_semaphores::h1bbae387870fe276
                               at /home/niklas/.cargo/registry/src/github.com-1ecc6299db9ec823/ash-0.33.3+1.2.191/src/vk/features.rs:6328:21
  15:     0x562c700494b2 - ash::vk::features::DeviceFnV1_2::wait_semaphores::hcf43d1fd401d1750
                               at /home/niklas/.cargo/registry/src/github.com-1ecc6299db9ec823/ash-0.33.3+1.2.191/src/vk/features.rs:6518:9
  16:     0x562c7002b260 - ash::device::Device::wait_semaphores::had5cd1d9e12ad12c
                               at /home/niklas/.cargo/registry/src/github.com-1ecc6299db9ec823/ash-0.33.3+1.2.191/src/device.rs:167:9
  17:     0x562c6ffaa832 - wgpu_hal::vulkan::device::<impl wgpu_hal::Device<wgpu_hal::vulkan::Api> for wgpu_hal::vulkan::Device>::wait::hac70275f6859bb6b
                               at /home/niklas/code/wgpu/wgpu-hal/src/vulkan/device.rs:1713:25
  18:     0x562c6fb70279 - wgpu_core::device::Device<A>::prepare_to_die::hbf9783952aca01e8
                               at /home/niklas/code/wgpu/wgpu-core/src/device/mod.rs:2734:38
  19:     0x562c6fbe2401 - wgpu_core::hub::Hub<A,F>::clear::hce1191672d305d08
                               at /home/niklas/code/wgpu/wgpu-core/src/hub.rs:613:17
  20:     0x562c6fad18a2 - <wgpu_core::hub::Global<G> as core::ops::drop::Drop>::drop::h18c9e2e9ab62b517
                               at /home/niklas/code/wgpu/wgpu-core/src/hub.rs:903:13
  21:     0x562c6facd127 - core::ptr::drop_in_place<wgpu_core::hub::Global<wgpu_core::hub::IdentityManagerFactory>>::h423d6683efb134ad
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/core/src/ptr/mod.rs:188:1
  22:     0x562c6fac6484 - core::ptr::drop_in_place<wgpu::backend::direct::Context>::h843e2b3cb3cc2c43
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/core/src/ptr/mod.rs:188:1
  23:     0x562c6fafcc14 - alloc::sync::Arc<T>::drop_slow::h228aa4d30bb9a63f
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/alloc/src/sync.rs:1065:18
  24:     0x562c6facee93 - <alloc::sync::Arc<T> as core::ops::drop::Drop>::drop::h0de3aab80630edb7
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/alloc/src/sync.rs:1625:13
  25:     0x562c6fac9b0b - core::ptr::drop_in_place<alloc::sync::Arc<wgpu::backend::direct::Context>>::h3f391c91b40bdc40
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/core/src/ptr/mod.rs:188:1
  26:     0x562c6f4888b4 - core::ptr::drop_in_place<wgpu::Surface>::hc90a874ff6d84b55
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/core/src/ptr/mod.rs:188:1
  27:     0x562c6f48b3e6 - core::ptr::drop_in_place<boids::framework::start<boids::Example>::{{closure}}>::h7dbbb18b78f88974
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/core/src/ptr/mod.rs:188:1
  28:     0x562c6f4670c8 - winit::platform_impl::platform::x11::EventLoop<T>::run_return::hc82c7d44f351c850
                               at /home/niklas/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.25.0/src/platform_impl/linux/x11/mod.rs:379:5
  29:     0x562c6f4684f1 - winit::platform_impl::platform::x11::EventLoop<T>::run::ha885f09786197fa4
                               at /home/niklas/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.25.0/src/platform_impl/linux/x11/mod.rs:385:9
  30:     0x562c6f495f40 - winit::platform_impl::platform::EventLoop<T>::run::h95acee346e08e0ba
                               at /home/niklas/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.25.0/src/platform_impl/linux/mod.rs:662:56
  31:     0x562c6f47d1ca - winit::event_loop::EventLoop<T>::run::heb8d366fc4e60c2e
                               at /home/niklas/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.25.0/src/event_loop.rs:154:9
  32:     0x562c6f4718ad - boids::framework::start::h21a3e4d53b8ee6cc
                               at /home/niklas/code/wgpu/wgpu/examples/boids/../framework.rs:229:5
  33:     0x562c6f4727b0 - boids::framework::run::h3c29fde351837bfa
                               at /home/niklas/code/wgpu/wgpu/examples/boids/../framework.rs:386:5
  34:     0x562c6f46aa62 - boids::main::haf3014457ae6518b
                               at /home/niklas/code/wgpu/wgpu/examples/boids/main.rs:330:5
  35:     0x562c6f486b0b - core::ops::function::FnOnce::call_once::hbb0dde4586bf7532
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/core/src/ops/function.rs:227:5
  36:     0x562c6f4c765e - std::sys_common::backtrace::__rust_begin_short_backtrace::h40e024ccaf649f5c
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/sys_common/backtrace.rs:125:18
  37:     0x562c6f455211 - std::rt::lang_start::{{closure}}::h9a967bdeba4c43ff
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/rt.rs:63:18
  38:     0x562c702c4f5a - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h2790017aba790142
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/core/src/ops/function.rs:259:13
  39:     0x562c702c4f5a - std::panicking::try::do_call::hd5d0fbb7d2d2d85d
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panicking.rs:403:40
  40:     0x562c702c4f5a - std::panicking::try::h675520ee37b0fdf7
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panicking.rs:367:19
  41:     0x562c702c4f5a - std::panic::catch_unwind::h803430ea0284ce79
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panic.rs:129:14
  42:     0x562c702c4f5a - std::rt::lang_start_internal::{{closure}}::h3a398a8154de3106
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/rt.rs:45:48
  43:     0x562c702c4f5a - std::panicking::try::do_call::hf60f106700df94b2
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panicking.rs:403:40
  44:     0x562c702c4f5a - std::panicking::try::hb2022d2bc87a9867
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panicking.rs:367:19
  45:     0x562c702c4f5a - std::panic::catch_unwind::hbf801c9d61f0c2fb
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panic.rs:129:14
  46:     0x562c702c4f5a - std::rt::lang_start_internal::hdd488b91dc742b96
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/rt.rs:45:20
  47:     0x562c6f4551e0 - std::rt::lang_start::hfd08a95391352079
                               at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/rt.rs:62:5
  48:     0x562c6f46aa8c - main
  49:     0x7fc192300bf7 - __libc_start_main
                               at /build/glibc-S9d2JN/glibc-2.27/csu/../csu/libc-start.c:310
  50:     0x562c6f4545aa - _start
  51:                0x0 - <unknown>
thread panicked while panicking. aborting.
[1]    15569 illegal hardware instruction (core dumped)  cargo run --example boids

Platform Ubuntu 18 running on main branch of wgpu at 62b036b55bc1409bc5d98b4ca429c4faaa506663 vulcaninfo output wgpu_hal_debug_output_boids.txt

I found this error first downstream in Bevy (see bevyengine/bevy#3172)

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Reactions: 1
  • Comments: 22 (16 by maintainers)

Commits related to this issue

Most upvoted comments

It works! Thank you @kvark !

@NiklasEi please test with #2238

boids_output_vk-init.txt

If this doesn’t help I’ll try getting the tracing to run.