sway icon indicating copy to clipboard operation
sway copied to clipboard

crash under qemu with virtio-gpu in gles2_bind_buffer

Open kallisti5 opened this issue 2 years ago • 7 comments

Please fill out the following:

  • Sway Version: Sway 1.7

  • Debug Log: sway_crash

  • Configuration File: Default config

  • Description: Starting the default sway window manager on EndeavourOS. Wouldn't launch via display manager, so attempted to launch via cli (init 3 boot)

kallisti5 avatar Feb 03 '22 16:02 kallisti5

For reproducability:

qemu-system-x86_64 --enable-kvm -m 8G -hda endevor.qcow2 -device virtio-gpu -vga virtio

QEMU emulator version 6.2.0

working on getting a backtrace. Need to recompile with debug symbols

kallisti5 avatar Feb 03 '22 16:02 kallisti5

recompiled master sway and wlroots as debug. reproduced. backtrace attached.

core.txt

kallisti5 avatar Feb 03 '22 16:02 kallisti5

(gdb) bt
#0  0x00007fb547e4bf4a in  () at /usr/lib/dri/kms_swrast_dri.so
#1  0x00007fb547f0cc10 in  () at /usr/lib/dri/kms_swrast_dri.so
#2  0x00007fb547f1f4bc in  () at /usr/lib/dri/kms_swrast_dri.so
#3  0x00007fb54899ebf8 in  () at /usr/lib/dri/kms_swrast_dri.so
#4  0x00007fb547ef805b in  () at /usr/lib/dri/kms_swrast_dri.so
#5  0x00007fb54799ce28 in  () at /usr/lib/dri/kms_swrast_dri.so
#6  0x00007fb54a5b9c0b in gles2_bind_buffer
    (wlr_renderer=0x55bad8f0d740, wlr_buffer=0x0)
    at ../render/gles2/renderer.c:162
#7  0x00007fb54a5b557a in renderer_bind_buffer (r=0x55bad8f0d740, buffer=0x0)
    at ../render/wlr_renderer.c:68
#8  0x00007fb54a5e93cb in output_clear_back_buffer (output=0x55bad91918b0)
    at ../types/output/render.c:135
#9  0x00007fb54a5e8514 in wlr_output_commit (output=0x55bad91918b0)
    at ../types/output/output.c:687
#10 0x000055bad700afbc in apply_output_config (oc=0x0, output=0x55bad9050a30)
    at ../sway/config/output.c:497
#11 0x000055bad6fec368 in handle_new_output
    (listener=0x55bad7062730 <server+112>, data=0x55bad91918b0)
    at ../sway/desktop/output.c:900
#12 0x00007fb54a62d983 in wlr_signal_emit_safe
    (signal=0x55bad8485f28, data=0x55bad91918b0) at ../util/signal.c:29
#13 0x00007fb54a5d5c3a in new_output_reemit
    (listener=0x55bad847fcd8, data=0x55bad91918b0)
    at ../backend/multi/backend.c:170
#14 0x00007fb54a62d983 in wlr_signal_emit_safe
    (signal=0x55bad849c358, data=0x55bad91918b0) at ../util/signal.c:29
#15 0x00007fb54a5c7ae6 in scan_drm_connectors (drm=0x55bad849c330, event=0x0)
    at ../backend/drm/drm.c:1413
#16 0x00007fb54a5c1fa5 in backend_start (backend=0x55bad849c330)
    at ../backend/drm/backend.c:25
#17 0x00007fb54a5c0409 in wlr_backend_start (backend=0x55bad849c330)
    at ../backend/backend.c:52
#18 0x00007fb54a5d57c6 in multi_backend_start (wlr_backend=0x55bad8485f00)
    at ../backend/multi/backend.c:33
#19 0x00007fb54a5c0409 in wlr_backend_start (backend=0x55bad8485f00)
    at ../backend/backend.c:52
#20 0x000055bad6fe682a in server_start (server=0x55bad70626c0 <server>)
    at ../sway/server.c:295
#21 0x000055bad6fe5a57 in main (argc=2, argv=0x7ffc8a1f2978)
    at ../sway/main.c:416

emersion avatar Feb 03 '22 17:02 emersion

Your bug report is missing debug logs. Please add a link to the full debug log file.

sway -d >sway.log 2>&1

emersion avatar Feb 03 '22 17:02 emersion

sway.log

kallisti5 avatar Feb 03 '22 18:02 kallisti5

I think I'm having the exact same issue on latest Artix Linux (installed with plasma) (log)

trunkensailor avatar Jul 16 '22 22:07 trunkensailor

I was able to get around this issue by using -device virtio-vga-gl -vga none -display sdl,gl=on. My cursor is flipped and offset downwards but I was able to get sway running with virtio

ForTheReallys avatar Nov 12 '22 01:11 ForTheReallys

I believe I just saw the same thing in Debian sway 1.8.1-1, qemu 7.2+dfsg-5. Pointer offset made it somewhat untenable.

rlbdv avatar Apr 02 '23 22:04 rlbdv

Is this related to Crash with misbehaving wayland compositor that doesn't send wl_buffer.release? (Not using the software renderer (virtio-vga-gl) fixes the issue)

brandsimon avatar Apr 27 '23 22:04 brandsimon

Not sure if performance is any good compared to GLES2, but it works using the Pixman renderer:

WLR_RENDERER=pixman sway

See also: https://gitlab.com/fedora/sigs/sway/sway-config-fedora/-/blob/66f553d999b8f7e57fe924a6b53f1c9078acbc95/sway/start-sway#L32

joanbm avatar May 07 '23 18:05 joanbm

@joanbm Thank you very much! On virtio-gpu-pci performance seams to be even faster with debian 12, sway 1.7 and pixman compared to debian 11 and stock sway 1.5. At least my personal impression.

brandsimon avatar May 09 '23 00:05 brandsimon