Bug 73895 - SIGSEGV in notify_output_destroy during weston shutdown
Summary: SIGSEGV in notify_output_destroy during weston shutdown
Status: VERIFIED FIXED
Alias: None
Product: Wayland
Classification: Unclassified
Component: weston (show other bugs)
Version: unspecified
Hardware: Other All
: medium critical
Assignee: Wayland bug list
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-01-21 19:40 UTC by U. Artie Eoff
Modified: 2014-01-23 19:56 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
gdb backtrace (4.80 KB, text/plain)
2014-01-21 19:40 UTC, U. Artie Eoff
Details

Description U. Artie Eoff 2014-01-21 19:40:51 UTC
Created attachment 92539 [details]
gdb backtrace

When a touch device is mapped to an output, Weston crashes during shutdown in the notify_output_destroy listener.  See gdb backtrace

systemd (master) heads/master-0-g607553f
wayland (master) heads/master-0-g47bbc6b
drm (master) libdrm-2.4.50-0-g4c5de72
mesa (master) heads/master-0-g4cd8011
libva (master) libva-1.2.1-0-g88ed1eb
intel-driver (master) 1.2.1-0-g8f306e3
weston (master) 1.3.93-0-g7cccfca
Comment 1 U. Artie Eoff 2014-01-21 19:54:41 UTC
Valgrind indicates the evdev's have already been destroyed:


==16962== Invalid read of size 8
==16962==    at 0x4E43D44: wl_list_insert (wayland-util.c:47)
==16962==    by 0x78614A4: wl_signal_add (wayland-server.h:223)
==16962==    by 0x78636DB: evdev_device_set_output (evdev.c:620)
==16962==    by 0x7863660: notify_output_destroy (evdev.c:608)
==16962==    by 0x407B7E: wl_signal_emit (wayland-server.h:260)
==16962==    by 0x411322: weston_output_destroy (compositor.c:3196)
==16962==    by 0x785ACF3: drm_output_destroy (compositor-drm.c:1149)
==16962==    by 0x412C8D: weston_compositor_shutdown (compositor.c:3738)
==16962==    by 0x785EAA7: drm_destroy (compositor-drm.c:2344)
==16962==    by 0x413EBB: main (compositor.c:4283)
==16962==  Address 0xd3ca348 is 56 bytes inside a block of size 384 free'd
==16962==    at 0x4C28577: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==16962==    by 0x7863B21: evdev_device_destroy (evdev.c:705)
==16962==    by 0x7860E2C: udev_input_remove_devices (udev-seat.c:291)
==16962==    by 0x7860F3B: udev_input_disable (udev-seat.c:310)
==16962==    by 0x7861021: udev_input_destroy (udev-seat.c:335)
==16962==    by 0x785EA69: drm_destroy (compositor-drm.c:2337)
==16962==    by 0x413EBB: main (compositor.c:4283)
Comment 2 Kristian Høgsberg 2014-01-22 19:04:12 UTC
commit 8259728a569e973a8895b919ba057740a813f52a
Author: Kristian Høgsberg <krh@bitplanet.net>
Date:   Wed Jan 22 11:03:50 2014 -0800

    evdev: Remove output destroy notifier on device destroy
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=73895


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.