Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

panic in rhyolite #15

Open
Mikopet opened this issue Dec 7, 2023 · 1 comment
Open

panic in rhyolite #15

Mikopet opened this issue Dec 7, 2023 · 1 comment

Comments

@Mikopet
Copy link

Mikopet commented Dec 7, 2023

Hey!

I'm super new in these things, and struggling with the start of dust.

I think I have all the dependencies needed, and running with this command (in WSL, sorry for that):

RUST_BACKTRACE=full WINIT_UNIX_BACKEND="x11" cargo run --release --example castle

I guess starting it in WSL may not be the best way, but it did worth a try. However, the issue:
TLDR:

thread 'main' panicked at 'called `Option::unwrap()` on a `None` value', crates/rhyolite/src/queue/router.rs:161:14

It maybe some code issue?

Full trace:

    Finished release [optimized] target(s) in 3.78s
     Running `target/release/examples/castle`
2023-12-07T21:47:58.711214Z  INFO bevy_winit::system: Creating new window "Dust Renderer: Castle" (0v0)
2023-12-07T21:47:58.711452Z  WARN log: XRandR reported that the display's 0mm in size, which is certifiably insane
2023-12-07T21:47:58.712691Z  INFO log: Guessed window scale factor: 1
2023-12-07T21:47:58.884309Z  INFO rhyolite_bevy: Using CPU "llvmpipe (LLVM 15.0.7, 256 bits)" with memory model ReBar
thread 'main' panicked at 'called `Option::unwrap()` on a `None` value', crates/rhyolite/src/queue/router.rs:161:14
stack backtrace:
   0:     0x558da37bc271 - std::backtrace_rs::backtrace::libunwind::trace::hc5a5a7e975d8755e
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:     0x558da37bc271 - std::backtrace_rs::backtrace::trace_unsynchronized::h84e5c72629d19937
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x558da37bc271 - std::sys_common::backtrace::_print_fmt::he3c46ed0d36f4aec
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/sys_common/backtrace.rs:65:5
   3:     0x558da37bc271 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hfc5fcda08d2037a2
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/sys_common/backtrace.rs:44:22
   4:     0x558da37eaa4f - core::fmt::rt::Argument::fmt::hbd2b033155184b18
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/core/src/fmt/rt.rs:138:9
   5:     0x558da37eaa4f - core::fmt::write::h340825c0920a31a7
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/core/src/fmt/mod.rs:1094:21
   6:     0x558da37b89f7 - std::io::Write::write_fmt::h0075c984dd7bcfd8
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/io/mod.rs:1714:15
   7:     0x558da37bc085 - std::sys_common::backtrace::_print::hecdbb567735dad9c
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/sys_common/backtrace.rs:47:5
   8:     0x558da37bc085 - std::sys_common::backtrace::print::hfd4cba0c975574f1
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/sys_common/backtrace.rs:34:9
   9:     0x558da37bd7f3 - std::panicking::default_hook::{{closure}}::h4a0157e348171cd9
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/panicking.rs:269:22
  10:     0x558da37bd584 - std::panicking::default_hook::hf8a7bfcf739d8205
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/panicking.rs:288:9
  11:     0x558da37bdd79 - std::panicking::rust_panic_with_hook::h4e348dfb616f7837
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/panicking.rs:705:13
  12:     0x558da37bdc31 - std::panicking::begin_panic_handler::{{closure}}::he6cb66e2ffdddd57
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/panicking.rs:595:13
  13:     0x558da37bc6d6 - std::sys_common::backtrace::__rust_end_short_backtrace::h748cfc33011f2562
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/sys_common/backtrace.rs:151:18
  14:     0x558da37bd9c2 - rust_begin_unwind
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/panicking.rs:593:5
  15:     0x558da2879b13 - core::panicking::panic_fmt::he97c92a69214704e
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/core/src/panicking.rs:67:14
  16:     0x558da2879ba3 - core::panicking::panic::h869a47101d6ef1a5
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/core/src/panicking.rs:117:5
  17:     0x558da32f448b - rhyolite::queue::router::QueuesRouter::new::h7e35985fe403be89
  18:     0x558da316cfde - <rhyolite_bevy::RenderPlugin as bevy_app::plugin::Plugin>::build::hba4fc15f70b666f0
  19:     0x558da36a3081 - bevy_app::app::App::add_boxed_plugin::h5c40b7ea2676f698
  20:     0x558da2c055ff - <P as bevy_app::plugin::sealed::Plugins<bevy_app::plugin::sealed::PluginMarker>>::add_to_app::hd2e97cecf367a7b6
  21:     0x558da2b9bf5e - <dust_render::RenderPlugin as bevy_app::plugin::Plugin>::build::h2c5b8c5ac34212ec
  22:     0x558da36a3081 - bevy_app::app::App::add_boxed_plugin::h5c40b7ea2676f698
  23:     0x558da289f1d2 - castle::main::he381f385e96bf1d6
  24:     0x558da2909b23 - std::sys_common::backtrace::__rust_begin_short_backtrace::h3f4daa2e7da5aaf0
  25:     0x558da28a15a9 - std::rt::lang_start::{{closure}}::hb0beca3780880224
  26:     0x558da37b0fbb - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h8618cc7290502852
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/core/src/ops/function.rs:284:13
  27:     0x558da37b0fbb - std::panicking::try::do_call::h8320b2dfe91d8d50
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/panicking.rs:500:40
  28:     0x558da37b0fbb - std::panicking::try::h8305e1f7790e9684
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/panicking.rs:464:19
  29:     0x558da37b0fbb - std::panic::catch_unwind::hf6916c1ca7dd9aed
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/panic.rs:142:14
  30:     0x558da37b0fbb - std::rt::lang_start_internal::{{closure}}::h46e9607cfa472c6b
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/rt.rs:148:48
  31:     0x558da37b0fbb - std::panicking::try::do_call::h5e7fd3c29e80314a
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/panicking.rs:500:40
  32:     0x558da37b0fbb - std::panicking::try::h6c44463280cc4ff9
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/panicking.rs:464:19
  33:     0x558da37b0fbb - std::panic::catch_unwind::hde4e11415b3ede11
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/panic.rs:142:14
  34:     0x558da37b0fbb - std::rt::lang_start_internal::hdeaa946879adf567
                               at /rustc/cb80ff132a0e9aa71529b701427e4e6c243b58df/library/std/src/rt.rs:148:20
  35:     0x558da28a0ff5 - main
  36:     0x7f00598a3d90 - <unknown>
  37:     0x7f00598a3e40 - __libc_start_main
  38:     0x558da287c1b5 - _start
  39:                0x0 - <unknown>
2023-12-07T21:47:59.037821Z  INFO rhyolite::instance: drop instance instance=0x558da4b74850

I hope this issue could help in some ways.

Cheers :)

@Neo-Zhixing
Copy link
Member

Neo-Zhixing commented Dec 8, 2023

Please do not start this in WSL.

rhyolite_bevy: Using CPU "llvmpipe (LLVM 15.0.7, 256 bits)" with memory model ReBar

llvmpipe is the linux default software emulated GPU. It does not have all the features we need and even if it does, it'll be super slow.

So when the application starts, it can't find all the queues it needs.

We could probably throw a better error here but proper support in WSL won't be there until Microsoft's dozen translation layer becomes substantially complete.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants