sebcrozet/kiss3d

Crash on wayland

Closed this issue · 3 comments

I have a piece of code that used to work, but after updating my system (Arch linux with wayland), I get the following error message immediately after starting my code:

[wayland-client error] Attempted to dispatch unknown opcode 0 for wl_shm, aborting.

A little googling pointed me to the following issue, which seemed to be resolved by updating glutin: alacritty/alacritty#4206. Since kiss3d pins glutin to 0.19, could that be the issue?

More complete backtrace:

[joel@panda thomson]$ RUST_BACKTRACE=1 WAYLAND_DEBUG=1 cargo run
    Finished dev [unoptimized + debuginfo] target(s) in 0.10s
     Running `target/debug/thomson`
[4289268.644]  -> wl_display@1.get_registry(new id wl_registry@2)
[4289268.716]  -> wl_display@1.sync(new id wl_callback@3)
[4289269.001] wl_display@1.delete_id(3)
[4289269.030] wl_registry@2.global(1, "wl_drm", 2)
[4289269.092] wl_registry@2.global(2, "wl_compositor", 4)
[4289269.109] wl_registry@2.global(3, "wl_shm", 1)
[4289269.122] wl_registry@2.global(4, "wl_output", 2)
[4289269.216]  -> wl_registry@2.bind(4, "wl_output", 2, new id [unknown]@4)
[4289269.270] wl_registry@2.global(5, "zxdg_output_manager_v1", 3)
[4289269.290] wl_registry@2.global(6, "wl_data_device_manager", 3)
[4289269.303] wl_registry@2.global(7, "zwp_primary_selection_device_manager_v1", 1)
[4289269.317] wl_registry@2.global(8, "gtk_primary_selection_device_manager", 1)
[4289269.341] wl_registry@2.global(9, "wl_subcompositor", 1)
[4289269.357] wl_registry@2.global(10, "xdg_wm_base", 3)
[4289269.376] wl_registry@2.global(11, "zxdg_shell_v6", 1)
[4289269.393] wl_registry@2.global(12, "wl_shell", 1)
[4289269.411] wl_registry@2.global(13, "gtk_shell1", 3)
[4289269.430] wl_registry@2.global(14, "wp_viewporter", 1)
[4289269.445] wl_registry@2.global(15, "zwp_pointer_gestures_v1", 1)
[4289269.459] wl_registry@2.global(16, "zwp_tablet_manager_v2", 1)
[4289269.473] wl_registry@2.global(17, "wl_seat", 5)
[4289269.519]  -> wl_registry@2.bind(17, "wl_seat", 5, new id [unknown]@5)
[4289269.571] wl_registry@2.global(18, "zwp_relative_pointer_manager_v1", 1)
[4289269.593] wl_registry@2.global(19, "zwp_pointer_constraints_v1", 1)
[4289269.612] wl_registry@2.global(20, "zxdg_exporter_v1", 1)
[4289269.630] wl_registry@2.global(21, "zxdg_importer_v1", 1)
[4289269.649] wl_registry@2.global(22, "zwp_linux_dmabuf_v1", 3)
[4289269.668] wl_registry@2.global(23, "zwp_keyboard_shortcuts_inhibit_manager_v1", 1)
[4289269.687] wl_registry@2.global(24, "zwp_text_input_manager_v3", 1)
[4289269.706] wl_registry@2.global(25, "gtk_text_input_manager", 1)
[4289269.725] wl_callback@3.done(6843)
[4289269.741]  -> wl_display@1.sync(new id wl_callback@3)
[4289269.991] wl_display@1.delete_id(3)
[4289270.022] wl_output@4.geometry(0, 0, 520, 320, 0, "DEL", "DELL U2412M", 0)
[4289270.097] wl_output@4.mode(3, 1920, 1200, 59950)
[4289270.121] wl_output@4.scale(1)
[4289270.132] wl_output@4.done()
[4289270.161] wl_seat@5.capabilities(3)
[4289270.198]  -> wl_seat@5.get_pointer(new id wl_pointer@6)
[4289276.561]  -> wl_seat@5.get_keyboard(new id wl_keyboard@7)
[4289276.625] wl_seat@5.name("seat0")
[4289276.650] wl_callback@3.done(6843)
[4289276.699]  -> wl_registry@2.bind(2, "wl_compositor", 4, new id [unknown]@3)
[4289276.736]  -> wl_registry@2.bind(9, "wl_subcompositor", 1, new id [unknown]@8)
[4289276.775]  -> wl_registry@2.bind(3, "wl_shm", 1, new id [unknown]@9)
[4289276.824]  -> wl_registry@2.bind(6, "wl_data_device_manager", 3, new id [unknown]@10)
[4289276.860]  -> wl_registry@2.bind(10, "xdg_wm_base", 3, new id [unknown]@11)
[4289276.901]  -> wl_display@1.sync(new id wl_callback@12)
[4289281.178] wl_display@1.delete_id(12)
[4289281.206] wl_keyboard@7.keymap(1, fd 4, 52735)
[4289283.286] wl_keyboard@7.repeat_info(33, 500)
[4289283.363] wl_shm@9.format(0)
[4289283.413] wl_shm@9.format(1)
[4289283.422] wl_shm@9.format(909199186)
[4289283.430] wl_shm@9.format(808669761)
[4289283.438] wl_shm@9.format(808669784)
[4289283.451] wl_shm@9.format(808665665)
[4289283.460] wl_shm@9.format(808665688)
[4289283.469] wl_shm@9.format(1211388481)
[wayland-client error] Attempted to dispatch unknown opcode 0 for wl_shm, aborting.
Aborted (core dumped)

(not including the code since I believe it to be irrelevant, but let me know if you need it)

In Kiss3d 0.28.0, we updated glutin to its version 0.25 (#252). So this Wayland issue is likely solved.
@joelthelion Don't hesitate to reopen this issue if it crashes with Kiss3d 0.28 too.

It works! Thanks a lot for the update.

I am having this exact issue now on 0.35 with Wayland on Hyprland. I am trying to launch the example from the openrr/rrt crate. This exact error happens on Hyprland Wayland, but it's a bit different on Gnome wayland:

image