Same thing happens without debug layers as well.
~/p/e/rust-gpu (main) [101]> env RUST_BACKTRACE=full cargo run --bin example-runner -- --debug-layer
Compiling example-runner v0.1.0 (/home/arong/projects/embark/rust-gpu/examples/example-runner)
Finished dev [unoptimized + debuginfo] target(s) in 1.96s
Running `target/debug/example-runner --debug-layer`
INFO:
GENERAL [Loader Message (0)] : Inserted device layer VK_LAYER_KHRONOS_validation (libVkLayer_khronos_validation.so)
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: ERROR_OUT_OF_DATE_KHR', examples/example-runner/src/main.rs:1096:18
stack backtrace:
0: 0x55fe29ea6100 - std::backtrace_rs::backtrace::libunwind::trace::h622bab51c72c4e69
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/../../backtrace/src/backtrace/libunwind.rs:100:5
1: 0x55fe29ea6100 - std::backtrace_rs::backtrace::trace_unsynchronized::h7e820b882ebd41ee
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
2: 0x55fe29ea6100 - std::sys_common::backtrace::_print_fmt::h64d46258114db92f
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/sys_common/backtrace.rs:67:5
3: 0x55fe29ea6100 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h47111d0c1b5f0da5
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/sys_common/backtrace.rs:46:22
4: 0x55fe29ec795c - core::fmt::write::h1857a60b204f1b6a
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/core/src/fmt/mod.rs:1076:17
5: 0x55fe29ea27e2 - std::io::Write::write_fmt::h4604516fed3e5731
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/io/mod.rs:1516:15
6: 0x55fe29ea8585 - std::sys_common::backtrace::_print::h785e7a78d5ef272c
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/sys_common/backtrace.rs:49:5
7: 0x55fe29ea8585 - std::sys_common::backtrace::print::h108047ac5c4555d5
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/sys_common/backtrace.rs:36:9
8: 0x55fe29ea8585 - std::panicking::default_hook::{{closure}}::h1d0c271f0d087ebf
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/panicking.rs:208:50
9: 0x55fe29ea8228 - std::panicking::default_hook::h692753e26f11b7b7
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/panicking.rs:227:9
10: 0x55fe29ea8c61 - std::panicking::rust_panic_with_hook::h74ddc20305301cd9
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/panicking.rs:577:17
11: 0x55fe29ea8809 - std::panicking::begin_panic_handler::{{closure}}::h1a9ca6427ceee1d0
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/panicking.rs:484:9
12: 0x55fe29ea65bc - std::sys_common::backtrace::__rust_end_short_backtrace::h97e27b7ab754adde
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/sys_common/backtrace.rs:141:18
13: 0x55fe29ea87c9 - rust_begin_unwind
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/panicking.rs:483:5
14: 0x55fe29ec5831 - core::panicking::panic_fmt::hb15d6f55e8472f62
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/core/src/panicking.rs:85:14
15: 0x55fe29ec5653 - core::option::expect_none_failed::he492a18657d97593
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/core/src/option.rs:1238:5
16: 0x55fe298b8631 - core::result::Result<T,E>::unwrap::h84b03395780deb6c
at /home/arong/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/result.rs:973:23
17: 0x55fe298c9c07 - example_runner::main::{{closure}}::hed9bc2edbf08d9ff
at /home/arong/projects/embark/rust-gpu/examples/example-runner/src/main.rs:1094:13
18: 0x55fe298c8a05 - example_runner::ExampleBase::render_loop::{{closure}}::h412d7dfdbc0428e2
at /home/arong/projects/embark/rust-gpu/examples/example-runner/src/main.rs:212:17
19: 0x55fe2986b514 - winit::platform_impl::platform::sticky_exit_callback::h0d38e7a64b54b4c9
at /home/arong/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.23.0/src/platform_impl/linux/mod.rs:726:5
20: 0x55fe298f014b - winit::platform_impl::platform::x11::EventLoop<T>::run_return::h0159bcbe4acde546
at /home/arong/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.23.0/src/platform_impl/linux/x11/mod.rs:318:17
21: 0x55fe298f108a - winit::platform_impl::platform::x11::EventLoop<T>::run::h2424665506b1f479
at /home/arong/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.23.0/src/platform_impl/linux/x11/mod.rs:386:9
22: 0x55fe2986b38e - winit::platform_impl::platform::EventLoop<T>::run::h298f39d37a4690bd
at /home/arong/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.23.0/src/platform_impl/linux/mod.rs:642:56
23: 0x55fe298d2354 - winit::event_loop::EventLoop<T>::run::hbcc3a5253511e0b0
at /home/arong/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.23.0/src/event_loop.rs:154:9
24: 0x55fe298c893f - example_runner::ExampleBase::render_loop::h812658a62019b45c
at /home/arong/projects/embark/rust-gpu/examples/example-runner/src/main.rs:210:9
25: 0x55fe29871308 - example_runner::main::h03349b7dbd16079c
at /home/arong/projects/embark/rust-gpu/examples/example-runner/src/main.rs:1006:9
26: 0x55fe2987cf6b - core::ops::function::FnOnce::call_once::h03d977b1992afcc9
at /home/arong/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:227:5
27: 0x55fe298d94fe - std::sys_common::backtrace::__rust_begin_short_backtrace::hca4abd01f72f6d2e
at /home/arong/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys_common/backtrace.rs:125:18
28: 0x55fe298daad1 - std::rt::lang_start::{{closure}}::h0ac2aaf396cd6202
at /home/arong/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:66:18
29: 0x55fe29ea9087 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h5867dc20a6af6cac
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/core/src/ops/function.rs:259:13
30: 0x55fe29ea9087 - std::panicking::try::do_call::h32e8dcce59f53a45
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/panicking.rs:381:40
31: 0x55fe29ea9087 - std::panicking::try::h7d7b073280e6de2f
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/panicking.rs:345:19
32: 0x55fe29ea9087 - std::panic::catch_unwind::h801333b3e4e7d79f
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/panic.rs:382:14
33: 0x55fe29ea9087 - std::rt::lang_start_internal::h2c157bf657c6892a
at /rustc/a85e94927622665a9e9022de0d33a890a2e32d43/library/std/src/rt.rs:51:25
34: 0x55fe298daaa7 - std::rt::lang_start::h6974924f36a5230c
at /home/arong/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:65:5
35: 0x55fe2987173a - main
36: 0x7f66547300b3 - __libc_start_main
37: 0x55fe2986b0ce - _start
38: 0x0 - <unknown>
ERROR:
VALIDATION [VUID-vkDestroyDevice-device-00378 (1901072314)] : Validation Error: [ VUID-vkDestroyDevice-device-00378 ] Object 0: handle = 0x55fe2b691fa0, type = VK_OBJECT_TYPE_DEVICE; Object 1: handle = 0x170000000017, type = VK_OBJECT_TYPE_DEVICE_MEMORY; | MessageID = 0x71500fba | OBJ ERROR : For VkDevice 0x55fe2b691fa0[], VkDeviceMemory 0x170000000017[] has not been destroyed. The Vulkan spec states: All child objects created on device must have been destroyed prior to destroying device (https://vulkan.lunarg.com/doc/view/1.2.141.0/linux/1.2-extensions/vkspec.html#VUID-vkDestroyDevice-device-00378)
ERROR:
VALIDATION [VUID-vkDestroyDevice-device-00378 (1901072314)] : Validation Error: [ VUID-vkDestroyDevice-device-00378 ] Object 0: handle = 0x55fe2b691fa0, type = VK_OBJECT_TYPE_DEVICE; Object 1: handle = 0x190000000019, type = VK_OBJECT_TYPE_DEVICE_MEMORY; | MessageID = 0x71500fba | OBJ ERROR : For VkDevice 0x55fe2b691fa0[], VkDeviceMemory 0x190000000019[] has not been destroyed. The Vulkan spec states: All child objects created on device must have been destroyed prior to destroying device (https://vulkan.lunarg.com/doc/view/1.2.141.0/linux/1.2-extensions/vkspec.html#VUID-vkDestroyDevice-device-00378)
ERROR:
VALIDATION [VUID-vkDestroyDevice-device-00378 (1901072314)] : Validation Error: [ VUID-vkDestroyDevice-device-00378 ] Object 0: handle = 0x55fe2b691fa0, type = VK_OBJECT_TYPE_DEVICE; Object 1: handle = 0x160000000016, type = VK_OBJECT_TYPE_BUFFER; | MessageID = 0x71500fba | OBJ ERROR : For VkDevice 0x55fe2b691fa0[], VkBuffer 0x160000000016[] has not been destroyed. The Vulkan spec states: All child objects created on device must have been destroyed prior to destroying device (https://vulkan.lunarg.com/doc/view/1.2.141.0/linux/1.2-extensions/vkspec.html#VUID-vkDestroyDevice-device-00378)
ERROR:
VALIDATION [VUID-vkDestroyDevice-device-00378 (1901072314)] : Validation Error: [ VUID-vkDestroyDevice-device-00378 ] Object 0: handle = 0x55fe2b691fa0, type = VK_OBJECT_TYPE_DEVICE; Object 1: handle = 0x180000000018, type = VK_OBJECT_TYPE_BUFFER; | MessageID = 0x71500fba | OBJ ERROR : For VkDevice 0x55fe2b691fa0[], VkBuffer 0x180000000018[] has not been destroyed. The Vulkan spec states: All child objects created on device must have been destroyed prior to destroying device (https://vulkan.lunarg.com/doc/view/1.2.141.0/linux/1.2-extensions/vkspec.html#VUID-vkDestroyDevice-device-00378)
ERROR:
VALIDATION [VUID-vkDestroyDevice-device-00378 (1901072314)] : Validation Error: [ VUID-vkDestroyDevice-device-00378 ] Object 0: handle = 0x55fe2b691fa0, type = VK_OBJECT_TYPE_DEVICE; Object 1: handle = 0x1a000000001a, type = VK_OBJECT_TYPE_SHADER_MODULE; | MessageID = 0x71500fba | OBJ ERROR : For VkDevice 0x55fe2b691fa0[], VkShaderModule 0x1a000000001a[] has not been destroyed. The Vulkan spec states: All child objects created on device must have been destroyed prior to destroying device (https://vulkan.lunarg.com/doc/view/1.2.141.0/linux/1.2-extensions/vkspec.html#VUID-vkDestroyDevice-device-00378)
ERROR:
VALIDATION [VUID-vkDestroyDevice-device-00378 (1901072314)] : Validation Error: [ VUID-vkDestroyDevice-device-00378 ] Object 0: handle = 0x55fe2b691fa0, type = VK_OBJECT_TYPE_DEVICE; Object 1: handle = 0x1b000000001b, type = VK_OBJECT_TYPE_PIPELINE_LAYOUT; | MessageID = 0x71500fba | OBJ ERROR : For VkDevice 0x55fe2b691fa0[], VkPipelineLayout 0x1b000000001b[] has not been destroyed. The Vulkan spec states: All child objects created on device must have been destroyed prior to destroying device (https://vulkan.lunarg.com/doc/view/1.2.141.0/linux/1.2-extensions/vkspec.html#VUID-vkDestroyDevice-device-00378)
ERROR:
VALIDATION [VUID-vkDestroyDevice-device-00378 (1901072314)] : Validation Error: [ VUID-vkDestroyDevice-device-00378 ] Object 0: handle = 0x55fe2b691fa0, type = VK_OBJECT_TYPE_DEVICE; Object 1: handle = 0x120000000012, type = VK_OBJECT_TYPE_RENDER_PASS; | MessageID = 0x71500fba | OBJ ERROR : For VkDevice 0x55fe2b691fa0[], VkRenderPass 0x120000000012[] has not been destroyed. The Vulkan spec states: All child objects created on device must have been destroyed prior to destroying device (https://vulkan.lunarg.com/doc/view/1.2.141.0/linux/1.2-extensions/vkspec.html#VUID-vkDestroyDevice-device-00378)
ERROR:
VALIDATION [VUID-vkDestroyDevice-device-00378 (1901072314)] : Validation Error: [ VUID-vkDestroyDevice-device-00378 ] Object 0: handle = 0x55fe2b691fa0, type = VK_OBJECT_TYPE_DEVICE; Object 1: handle = 0x1c000000001c, type = VK_OBJECT_TYPE_PIPELINE; | MessageID = 0x71500fba | OBJ ERROR : For VkDevice 0x55fe2b691fa0[], VkPipeline 0x1c000000001c[] has not been destroyed. The Vulkan spec states: All child objects created on device must have been destroyed prior to destroying device (https://vulkan.lunarg.com/doc/view/1.2.141.0/linux/1.2-extensions/vkspec.html#VUID-vkDestroyDevice-device-00378)
ERROR:
VALIDATION [VUID-vkDestroyDevice-device-00378 (1901072314)] : Validation Error: [ VUID-vkDestroyDevice-device-00378 ] Object 0: handle = 0x55fe2b691fa0, type = VK_OBJECT_TYPE_DEVICE; Object 1: handle = 0x150000000015, type = VK_OBJECT_TYPE_FRAMEBUFFER; | MessageID = 0x71500fba | OBJ ERROR : For VkDevice 0x55fe2b691fa0[], VkFramebuffer 0x150000000015[] has not been destroyed. The Vulkan spec states: All child objects created on device must have been destroyed prior to destroying device (https://vulkan.lunarg.com/doc/view/1.2.141.0/linux/1.2-extensions/vkspec.html#VUID-vkDestroyDevice-device-00378)
ERROR:
VALIDATION [VUID-vkDestroyDevice-device-00378 (1901072314)] : Validation Error: [ VUID-vkDestroyDevice-device-00378 ] Object 0: handle = 0x55fe2b691fa0, type = VK_OBJECT_TYPE_DEVICE; Object 1: handle = 0x140000000014, type = VK_OBJECT_TYPE_FRAMEBUFFER; | MessageID = 0x71500fba | OBJ ERROR : For VkDevice 0x55fe2b691fa0[], VkFramebuffer 0x140000000014[] has not been destroyed. The Vulkan spec states: All child objects created on device must have been destroyed prior to destroying device (https://vulkan.lunarg.com/doc/view/1.2.141.0/linux/1.2-extensions/vkspec.html#VUID-vkDestroyDevice-device-00378)
ERROR:
VALIDATION [VUID-vkDestroyDevice-device-00378 (1901072314)] : Validation Error: [ VUID-vkDestroyDevice-device-00378 ] Object 0: handle = 0x55fe2b691fa0, type = VK_OBJECT_TYPE_DEVICE; Object 1: handle = 0x130000000013, type = VK_OBJECT_TYPE_FRAMEBUFFER; | MessageID = 0x71500fba | OBJ ERROR : For VkDevice 0x55fe2b691fa0[], VkFramebuffer 0x130000000013[] has not been destroyed. The Vulkan spec states: All child objects created on device must have been destroyed prior to destroying device (https://vulkan.lunarg.com/doc/view/1.2.141.0/linux/1.2-extensions/vkspec.html#VUID-vkDestroyDevice-device-00378)
Expected Behaviour
Program runs
Example & Steps To Reproduce
Same thing happens without debug layers as well.
System Info
Backtrace