Bug 81314 - weston crashes while quitting, when in software rendering mode.
Summary: weston crashes while quitting, when in software rendering mode.
Status: RESOLVED FIXED
Alias: None
Product: Wayland
Classification: Unclassified
Component: weston (show other bugs)
Version: 1.5.0
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Wayland bug list
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-07-14 02:47 UTC by Andrew Engelbrecht
Modified: 2015-08-13 01:17 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
weston core dump and executable (2.50 MB, text/plain)
2014-07-14 02:47 UTC, Andrew Engelbrecht
Details

Description Andrew Engelbrecht 2014-07-14 02:47:55 UTC
Created attachment 102732 [details]
weston core dump and executable

i set the following variable in an x11 terminal:

export LIBGL_ALWAYS_SOFTWARE=1

then ran weston.

i moved a weston terminal window around a bunch, then closed that terminal
window, then then clicked the close button for weston. then the core dumped.

i'm running debian jessie + some sid on amd64. i've attached the core dump file and weston binary.


Program terminated with signal 5, Trace/breakpoint trap.
#0  0x00007f079501e7bb in raise (sig=5) at ../nptl/sysdeps/unix/sysv/linux/pt-raise.c:37
37	../nptl/sysdeps/unix/sysv/linux/pt-raise.c: No such file or directory.
(gdb) backtrace
#0  0x00007f079501e7bb in raise (sig=5) at ../nptl/sysdeps/unix/sysv/linux/pt-raise.c:37
#1  0x0000000000410119 in on_caught_signal (s=11, siginfo=0x7fff199f4d30, context=0x7fff199f4c00) at src/compositor.c:3916
#2  <signal handler called>
#3  0x0000000000407601 in wl_signal_emit (signal=0x2208208, data=0x2208200) at /home/sudoman/src/3rd-party/graphics/wayland/install/include/wayland-server.h:259
#4  0x000000000040af4a in weston_surface_destroy (surface=0x2208200) at src/compositor.c:1446
#5  0x00007f078944aad7 in fade_out_done (animation=0x24a00c0, data=0x1f43ff0) at desktop-shell/shell.c:3199
#6  0x000000000041d408 in weston_view_animation_destroy (animation=0x24a00c0) at src/animation.c:143
#7  0x000000000041d4dd in weston_view_animation_frame (base=0x24a00c8, output=0x16bef70, msecs=849598686) at src/animation.c:174
#8  0x000000000040c128 in weston_output_repaint (output=0x16bef70, msecs=849598686) at src/compositor.c:1863
#9  0x000000000040c20e in weston_output_finish_frame (output=0x16bef70, msecs=849598686) at src/compositor.c:1892
#10 0x00007f079464a6a0 in x11_output_start_repaint_loop (output=0x16bef70) at src/compositor-x11.c:347
#11 0x00007f079464abd6 in finish_frame_handler (data=0x16bef70) at src/compositor-x11.c:457
#12 0x00007f0795c1e485 in wl_event_source_timer_dispatch (source=0x1745100, ep=0x7fff199f5300) at src/event-loop.c:179
#13 0x00007f0795c1eb66 in wl_event_loop_dispatch (loop=0x1668220, timeout=-1) at src/event-loop.c:419
#14 0x00007f0795c1c9f7 in wl_display_run (display=0x1668190) at src/wayland-server.c:969
#15 0x0000000000410ddb in main (argc=1, argv=0x7fff199f57c8) at src/compositor.c:4326
Comment 1 Derek Foreman 2014-12-12 20:24:37 UTC
This bug still exists, I've posted a potential fix on the mailing list
http://lists.freedesktop.org/archives/wayland-devel/2014-December/019003.html

The root cause is that the X11 event handler is processed in the middle of frame repaint just a few lines before the animations are updated.  So if the x11 event handler destroys the output, the processing of animation events fails.

LIBGL_ALWAYS_SOFTWARE=1 appears to be a red herring, though it may influence timing.
Comment 2 Dawid Gajownik 2015-08-13 01:17:42 UTC
Mentioned patch was pushed to master some time ago.
http://cgit.freedesktop.org/wayland/weston/commit/?id=6deb09ef8a72164947cdfa5f2414e292c7672c9c

If the problem is still reproducible please feel free to reopen this bug.

Thanks,
    Dawid


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.