Bug 66529 - SIGSEGV in wl_list_insert during HDMI hotplug
Summary: SIGSEGV in wl_list_insert during HDMI hotplug
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: 2013-07-03 05:15 UTC by U. Artie Eoff
Modified: 2013-07-08 19:28 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
gdb backtrace (7.31 KB, text/plain)
2013-07-03 05:15 UTC, U. Artie Eoff
Details
weston output log (8.25 KB, text/plain)
2013-07-03 05:16 UTC, U. Artie Eoff
Details
gdb inspect elm->next is NULL (373 bytes, text/plain)
2013-07-03 05:20 UTC, U. Artie Eoff
Details
weston-desktop-shell gdb backtrace (5.63 KB, text/plain)
2013-07-03 06:08 UTC, U. Artie Eoff
Details

Description U. Artie Eoff 2013-07-03 05:15:39 UTC
Created attachment 81920 [details]
gdb backtrace

Received SIGSEGV at weston_compositor_stack_plane()->wl_list_insert() in Weston when hot-plugging HDMI display. See attached gdb backtrace and Weston output log.

Steps
------
1. On laptop with LVDS and HDMI connector, ensure HDMI is unplugged.
2. Launch weston --backend=drm-backend.so
3. Hot-plug HDMI display
4. Hot-unplug HDMI display
5. Hot-plug HDMI display again.
6. Observe Weston SEGV

Software
--------

wayland (master) heads/master-0-g2e07587
fontconfig (master) heads/master-0-gcbf06d7
drm (master) libdrm-2.4.46-0-gc6d73cf
mesa (master) heads/master-0-g84f367e
libxkbcommon (master) heads/master-0-g6f06eb5
pixman (master) heads/master-0-g279bdcd
cairo (master) heads/master-0-g7b8fc77
weston (master) heads/master-0-gb08b329
Comment 1 U. Artie Eoff 2013-07-03 05:16:09 UTC
Created attachment 81921 [details]
weston output log
Comment 2 U. Artie Eoff 2013-07-03 05:20:18 UTC
Created attachment 81922 [details]
gdb inspect elm->next is NULL
Comment 3 U. Artie Eoff 2013-07-03 06:08:53 UTC
Created attachment 81936 [details]
weston-desktop-shell gdb backtrace

The weston-desktop-shell dies on the first hotplug step.
Comment 4 U. Artie Eoff 2013-07-03 06:11:28 UTC
(In reply to comment #3)
> Created attachment 81936 [details]
> weston-desktop-shell gdb backtrace
> 
> The weston-desktop-shell dies on the first hotplug step.

Same weston-desktop-shell backtrace as bug 66531
Comment 5 Rob Bradford 2013-07-08 10:45:39 UTC
The two issues were fixed by:

commit 3c36bf348693443d47189ed45f2b3b74c0978803
Author: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Date:   Fri Jul 5 16:05:26 2013 +0300

    compositor: Remove a plane from the compositor list when releasing it
    
    Weston would crash when hot plugging/unplugging outputs using the DRM
    backend due to a corrupted plane list.
    
    https://bugs.freedesktop.org/show_bug.cgi?id=66530
    https://bugs.freedesktop.org/show_bug.cgi?id=66529


and

commit e4925495365abcfa5a92bb462a79b92af6d56f26
Author: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Date:   Fri Jul 5 16:05:28 2013 +0300

    desktop-shell: Don't crash on output hotplug
    
    The panel and background were never created for hotplugged outputs and
    since some parts of the code assume that they always exist that would
    lead to desktop-shell client to crash in that case.
    
    This was easier to spot when the display was locked, because Weston
    respawns the shell client and the user might not notice since there is
    no flicker.
    
    https://bugs.freedesktop.org/show_bug.cgi?id=66531


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.