Suspend/Resume on Wayland with Nvidia drivers crashes #5154
Labels
bug
Something isn't working
fixed-in-nightly
This is (or is assumed to be) fixed in the nightly builds.
What Operating System(s) are you seeing this problem on?
Linux Wayland
Which Wayland compositor or X11 Window manager(s) are you using?
kwin 6
Note that i'm on fedora 40 track (not rawhide).
WezTerm version
20240309-215818-f5ed731f
Did you try the latest nightly build to see if the issue is better (or worse!) than your current version?
Yes, and I updated the version box above to show the version of the nightly that I tried
Describe the bug
On resume, the todo! in window/src/os/wayland/seat.rs:70:9 is hit:
(it also panics while panicing trying to print time zone info in the log message because a thread went away and it tries to acess TLS storage, but this is secondary)
To Reproduce
Start wezterm
Suspend laptop
Resume laptop
Configuration
This happens regardless of config (as long as wayland is enabled and you use nvidia drivers)
Expected Behavior
No crash
Logs
08:02:44.989 ERROR env_bootstrap > panic at window/src/os/wayland/seat.rs:70:9 - not yet implemented
0: env_bootstrap::register_panic_hook::{{closure}}
at /home/dannyb/sources/wezterm-cassowary/env-bootstrap/src/lib.rs:176:18
1: <alloc::boxed::Box<F,A> as core::ops::function::Fn>::call
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2029:9
std::panicking::rust_panic_with_hook
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:783:13
2: std::panicking::begin_panic_handler::{{closure}}
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:649:13
3: std::sys_common::backtrace::__rust_end_short_backtrace
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:171:18
4: rust_begin_unwind
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:645:5
5: core::panicking::panic_fmt
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panicking.rs:72:14
6: core::panicking::panic
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panicking.rs:144:5
7: window::os::wayland::seat::::remove_capability
at /home/dannyb/sources/wezterm-cassowary/window/src/os/wayland/seat.rs:70:9
8: <smithay_client_toolkit::seat::SeatState as wayland_client::event_queue::Dispatch<wayland_client::protocol::wl_seat::WlSeat,smithay_client_toolkit::seat::SeatData,D>>::event
at /home/dannyb/.cargo/registry/src/index.crates.io-6f17d22bba15001f/smithay-client-toolkit-0.17.0/src/seat/mod.rs:400:29
9: <window::os::wayland::state::WaylandState as wayland_client::event_queue::Dispatch<wayland_client::protocol::wl_seat::WlSeat,smithay_client_toolkit::seat::SeatData>>::event
at /home/dannyb/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wayland-client-0.30.2/src/event_queue.rs:793:17
10: wayland_client::event_queue::queue_callback
at /home/dannyb/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wayland-client-0.30.2/src/event_queue.rs:651:5
11: wayland_client::event_queue::EventQueue::dispatching_impl
at /home/dannyb/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wayland-client-0.30.2/src/event_queue.rs:473:13
12: wayland_client::event_queue::EventQueue::dispatch_pending
at /home/dannyb/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wayland-client-0.30.2/src/event_queue.rs:376:9
13: window::os::wayland::connection::WaylandConnection::run_message_loop_impl
at /home/dannyb/sources/wezterm-cassowary/window/src/os/wayland/connection.rs:83:35
14: <window::os::wayland::connection::WaylandConnection as window::connection::ConnectionOps>::run_message_loop
at /home/dannyb/sources/wezterm-cassowary/window/src/os/wayland/connection.rs:167:19
15: <window::os::x_and_wayland::Connection as window::connection::ConnectionOps>::run_message_loop
at /home/dannyb/sources/wezterm-cassowary/window/src/os/x_and_wayland.rs:150:33
16: wezterm_gui::frontend::GuiFrontEnd::run_forever
at /home/dannyb/sources/wezterm-cassowary/wezterm-gui/src/frontend.rs:324:9
17: wezterm_gui::run_terminal_gui
at /home/dannyb/sources/wezterm-cassowary/wezterm-gui/src/main.rs:791:5
18: wezterm_gui::run
at /home/dannyb/sources/wezterm-cassowary/wezterm-gui/src/main.rs:1253:23
19: wezterm_gui::main
at /home/dannyb/sources/wezterm-cassowary/wezterm-gui/src/main.rs:837:21
20: core::ops::function::FnOnce::call_once
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
21: std::sys_common::backtrace::__rust_begin_short_backtrace
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:155:18
22: std::rt::lang_start::{{closure}}
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/rt.rs:166:18
23: core::ops::function::impls::<impl core::ops::function::FnOnce for &F>::call_once
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:284:13
std::panicking::try::do_call
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:552:40
std::panicking::try
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:516:19
std::panic::catch_unwind
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panic.rs:142:14
std::rt::lang_start_internal::{{closure}}
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/rt.rs:148:48
std::panicking::try::do_call
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:552:40
std::panicking::try
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:516:19
std::panic::catch_unwind
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panic.rs:142:14
std::rt::lang_start_internal
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/rt.rs:148:20
24: std::rt::lang_start
at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/rt.rs:165:17
25: main
26: __libc_start_call_main
27: __libc_start_main_impl
28: _start
thread 'main' panicked at window/src/os/wayland/seat.rs:70:9:
not yet implemented
note: run with
RUST_BACKTRACE=1
environment variable to display a backtracethread panicked while processing panic. aborting.
zsh: IOT instruction (core dumped) wezterm
Anything else?
Commenting out the todo's works fine, but i assume causes a memory leak of some sort :)
The text was updated successfully, but these errors were encountered: