Segmentation fault on server shutdown with mesa-kms

Bug #1513901 reported by Alexandros Frantzis on 2015-11-06
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fix Released
Alexandros Frantzis
mir (Ubuntu)

Bug Description

When the server shuts down we get a crash in the DefaultEmergencyCleanup destructor:

#0 0x00007ffff0bca81e in ?? ()
#1 0x00007ffff63e8c7d in std::_Function_base::~_Function_base (this=0x7054d0,
    __in_chrg=<optimized out>) at /usr/include/c++/5/functional:1830
#2 0x00007ffff63edef6 in std::function<void ()>::~function() (this=0x7054d0,
    __in_chrg=<optimized out>) at /usr/include/c++/5/functional:1974
#3 0x00007ffff6419714 in mir::DefaultEmergencyCleanup::ListItem::~ListItem (this=0x7054d0,
    __in_chrg=<optimized out>) at /storage/work/mir/src/server/default_emergency_cleanup.h:38
#4 0x00007ffff641973a in std::default_delete<mir::DefaultEmergencyCleanup::ListItem>::operator() (
    this=0x63e738, __ptr=0x7054d0) at /usr/include/c++/5/bits/unique_ptr.h:76
#5 0x00007ffff6419553 in std::unique_ptr<mir::DefaultEmergencyCleanup::ListItem, std::default_delete<mir::DefaultEmergencyCleanup::ListItem> >::~unique_ptr (this=0x63e738, __in_chrg=<optimized out>)
    at /usr/include/c++/5/bits/unique_ptr.h:236
#6 0x00007ffff6419708 in mir::DefaultEmergencyCleanup::ListItem::~ListItem (this=0x63e718,
    __in_chrg=<optimized out>) at /storage/work/mir/src/server/default_emergency_cleanup.h:38
#7 0x00007ffff64198d8 in mir::DefaultEmergencyCleanup::~DefaultEmergencyCleanup (this=0x63e710,
    __in_chrg=<optimized out>) at /storage/work/mir/src/server/default_emergency_cleanup.h:31
#8 0x00007ffff6404753 in __gnu_cxx::new_allocator<mir::DefaultEmergencyCleanup>::destroy<mir::DefaultEmergencyCleanup> (this=0x63e710, __p=0x63e710) at /usr/include/c++/5/ext/new_allocator.h:124
#9 0x00007ffff6404572 in std::allocator_traits<std::allocator<mir::DefaultEmergencyCleanup> >::_S_destroy<mir::DefaultEmergencyCleanup> (__a=..., __p=0x63e710) at /usr/include/c++/5/bits/alloc_traits.h:285
#10 0x00007ffff6404245 in std::allocator_traits<std::allocator<mir::DefaultEmergencyCleanup> >::destroy<mir::DefaultEmergencyCleanup> (__a=..., __p=0x63e710) at /usr/include/c++/5/bits/alloc_traits.h:414
#11 0x00007ffff6403417 in std::_Sp_counted_ptr_inplace<mir::DefaultEmergencyCleanup, std::allocator<mir::DefaultEmergencyCleanup>, (__gnu_cxx::_Lock_policy)2>::_M_dispose (this=0x63e700)
    at /usr/include/c++/5/bits/shared_ptr_base.h:531
#12 0x00007ffff63e92e0 in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release (this=0x63e700)
    at /usr/include/c++/5/bits/shared_ptr_base.h:150
#13 0x00007ffff63e8f83 in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count (
    this=0x7fffffffe228, __in_chrg=<optimized out>) at /usr/include/c++/5/bits/shared_ptr_base.h:659
#14 0x00007ffff63e8dfc in std::__shared_ptr<mir::EmergencyCleanup, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr (this=0x7fffffffe220, __in_chrg=<optimized out>) at /usr/include/c++/5/bits/shared_ptr_base.h:925
#15 0x00007ffff63e8e18 in std::shared_ptr<mir::EmergencyCleanup>::~shared_ptr (this=0x7fffffffe220,
    __in_chrg=<optimized out>) at /usr/include/c++/5/bits/shared_ptr.h:93
#16 0x00007ffff641a6bc in mir::Server::run (this=0x7fffffffe290)
    at /storage/work/mir/src/server/server.cpp:382
#17 0x00007ffff6ad2993 in main (argc=1, argv=0x7fffffffe478)
    at /storage/work/mir/examples/server_example.cpp:110
#18 0x000000000040106a in main (argc=1, argv=0x7fffffffe478)
    at /storage/work/mir/examples/mir_demo_server_loader.cpp:40

Related branches

PS Jenkins bot (ps-jenkins) wrote :

Fix committed into lp:mir at revision None, scheduled for release in mir, milestone 0.18.0

Changed in mir:
status: In Progress → Fix Committed
Changed in mir:
milestone: none → 0.18.0
Launchpad Janitor (janitor) wrote :
Download full text (6.3 KiB)

This bug was fixed in the package mir - 0.18.0+16.04.20151216.1-0ubuntu1

mir (0.18.0+16.04.20151216.1-0ubuntu1) xenial; urgency=medium

  [ Kevin DuBois ]
  * New upstream release 0.18.0 (https://launchpad.net/mir/+milestone/0.18.0)
    - ABI summary: Only servers need rebuilding;
      . Mirclient ABI unchanged at 9
      . Mirserver ABI bumped to 36
      . Mircommon ABI unchanged at 5
      . Mirplatform ABI unchanged at 11
      . Mirprotobuf ABI unchanged at 3
      . Mirplatformgraphics ABI bumped to 7
      . Mirclientplatform ABI unchanged at 3
      . Mirinputplatform ABI added. Current version is 4
    - Enhancements:
      . Use libinput by default, and remove the android input stack
      . Add x11 input probing
      . Add alternative buffer swapping mechanism internally, available with
        --nbuffers 0
      . Automatic searching and selection of input platforms
      . Better support for themed cursors
      . Add demo client that uses multiple buffer streams in one surface
      . Improve fingerpaint demo to use touch pressure
      . Allow for configuring cursor acceleration, scroll speed and left or
        right handed mice
      . Allow for setting a base display configuration via client api
      . Various nested server multimonitor fixes and stability improvements
      . Remove DepthId from the SurfaceStack
    - Bug fixes:
      . Unit test failures in Display.* on Android (LP: #1519276)
      . Build failure due to missing dependency of client rpc code on mir
        protobuf (LP: #1518372)
      . Test failure in
        (LP: #1517990)
      . CI test failures in various NesterServer tests (LP: #1517781)
      . FTBFS with -DMIR_PLATFORM=android (LP: #1517532)
      . Nesting Mir servers with assorted display configs causes lockup
        (LP: #1516670)
      . [testsfail] RaiseSurfaces.motion_events_dont_prevent_raise
        (LP: #1515931)
      . CI test failures in GLMark2Test (LP: #1515660)
      . Shells that inject user input events need to agree with the system
        compositor on the clock to use (LP: #1515515)
      . mircookie-dev is missing nettle-dev dependency (LP: #1514391)
      . Segmentation fault on server shutdown with mesa-kms (LP: #1513901)
      . mircookie requires nettle but libmircookie-dev doesn't depend on it
        (LP: #1513792)
      . libmircookie1 package does not list libnettle as dependency
        (LP: #1513225)
      . display configuration not reset when application exits (LP: #1511798)
      . unplugging external monitor causes nested server to throttle client
        (LP: #1511723)
      . 1/2 screen on external monitor (LP: #1511538)
      . unity-system-compositor crash, no interaction on windowed mode
        (LP: #1511095)
      . [regression] arm64/powerpc cross compile doesn't build any more
        (LP: #1510778)
      . mir_connection_get_egl_pixel_format() crashes if libEGL is loaded
        RTLD_LAZY (LP: #1510218)
      . [multimonitor] nested server surface positioning incorrect
        (LP: #1506846)
      . unity-system-compositor fails to build against lp:mir r3027


Changed in mir (Ubuntu):
status: New → Fix Released
Kevin DuBois (kdub) on 2015-12-22
Changed in mir:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers