Crash in weston_signal_emit_mutable on surface destruction
I got this crash with latest Weston nested under X11, when trying to close the chrome.exe window running with Wine Wayland. The crash is not deterministic and
unfortunately I haven't been able to trigger this while running weston with -llog,proto
, so I can only provide a backtrace for now:
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x0000000000000000 in ?? ()
[Current thread is 1 (Thread 0x7f3e78d468c0 (LWP 37933))]
(gdb) bt
#0 0x0000000000000000 in ()
#1 0x00007f3e79484938 in weston_signal_emit_mutable (signal=0x55663acfd478, data=0x55663acfd470)
at ../shared/signal.c:62
#2 0x00007f3e79453f64 in weston_surface_unref (surface=0x55663acfd470)
at ../libweston/compositor.c:2352
#3 0x00007f3e794542ed in destroy_surface (resource=0x55663aca8850) at ../libweston/compositor.c:2413
#4 0x00007f3e79415ee7 in destroy_resource
(element=element@entry=0x55663aca8850, data=data@entry=0x0, flags=0) at ../src/wayland-server.c:730
#5 0x00007f3e794165f0 in wl_resource_destroy (resource=0x55663aca8850) at ../src/wayland-server.c:747
#6 0x00007f3e79457618 in surface_destroy (client=0x55663acdcf00, resource=0x55663aca8850)
at ../libweston/compositor.c:3797
#7 0x00007f3e78fa57ea in ffi_call_unix64 () at ../src/x86/unix64.S:105
#8 0x00007f3e78fa4923 in ffi_call_int
(cif=0x7ffd29bcc240, fn=0x7f3e794575fc <surface_destroy>, rvalue=<optimized out>, avalue=<optimized out>, closure=<optimized out>) at ../src/x86/ffi64.c:672
#9 0x00007f3e7941b981 in wl_closure_invoke
(closure=closure@entry=0x55663acf9930, flags=flags@entry=2, target=<optimized out>,
target@entry=0x55663aca8850, opcode=opcode@entry=0, data=<optimized out>, data@entry=0x55663acdcf00)
at ../src/connection.c:1025
#10 0x00007f3e79416bda in wl_client_connection_data
(fd=<optimized out>, mask=<optimized out>, data=0x55663acdcf00) at ../src/wayland-server.c:437
#11 0x00007f3e7941989a in wl_event_loop_dispatch (loop=0x55663a49e3f0, timeout=timeout@entry=-1)
at ../src/event-loop.c:1027
#12 0x00007f3e79417365 in wl_display_run (display=0x55663a49e300) at ../src/wayland-server.c:1431
#13 0x00007f3e794e87cc in wet_main (argc=1, argv=0x7ffd29bccca8, test_data=0x0)
at ../compositor/main.c:3822
#14 0x0000556639c1c15e in main (argc=8, argv=0x7ffd29bccca8) at ../compositor/executable.c:33
Edited by Alexandros Frantzis