Skip to content

Crash on exit #158

@AlanGriffiths

Description

@AlanGriffiths
Backtrace from a local build

#0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=) at ./nptl/pthread_kill.c:44
#1 __pthread_kill_internal (signo=6, threadid=) at ./nptl/pthread_kill.c:78
#2 __GI___pthread_kill (threadid=, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
#3 0x00007ffff764527e in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#4 0x00007ffff76288ff in __GI_abort () at ./stdlib/abort.c:79
#5 0x00007ffff7aa5ff5 in __gnu_cxx::__verbose_terminate_handler () at ../../../../src/libstdc++-v3/libsupc++/vterminate.cc:95
#6 0x00007ffff7abb0da in __cxxabiv1::__terminate (handler=) at ../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:48
#7 0x00007ffff7aa58e6 in __cxa_call_terminate (ue_header_in=0x555555f39600) at ../../../../src/libstdc++-v3/libsupc++/eh_call.cc:56
#8 0x00007ffff7aba8ba in __cxxabiv1::__gxx_personality_v0 (version=, actions=6, exception_class=5138137972254386944, ue_header=0x555555f39600, context=0x7fffffffc910)
at ../../../../src/libstdc++-v3/libsupc++/eh_personality.cc:692
#9 0x00007ffff7ca2b06 in _Unwind_RaiseException_Phase2 (exc=exc@entry=0x555555f39600, context=context@entry=0x7fffffffc910, frames_p=frames_p@entry=0x7fffffffc818)
at ../../../src/libgcc/unwind.inc:64
#10 0x00007ffff7ca35cd in _Unwind_Resume (exc=0x555555f39600) at ../../../src/libgcc/unwind.inc:242
#11 0x00007ffff6f37953 in mir::frontend::WaylandConnector::wl_display_global_filter_func (this=0x555555742f20, client=0x7fff60049690, global=0x555555efb910)
at /home/alan/CLionProjects/mir/src/server/frontend_wayland/wayland_connector.cpp:549
#12 0x00007ffff6f37893 in mir::frontend::WaylandConnector::wl_display_global_filter_func_thunk (client=0x7fff60049690, global=0x555555efb910, data=0x555555742f20)
at /home/alan/CLionProjects/mir/src/server/frontend_wayland/wayland_connector.cpp:541
#13 0x00007ffff6809040 in wl_global_remove () at /lib/x86_64-linux-gnu/libwayland-server.so.0
#14 0x00007ffff68090d5 in wl_global_destroy () at /lib/x86_64-linux-gnu/libwayland-server.so.0
#15 0x00007ffff68d5d5a in mir::wayland::Global::~Global (this=0x555555efa350, __in_chrg=) at /home/alan/CLionProjects/mir/src/wayland/global.cpp:35
#16 0x00007ffff702da42 in mir::wayland::PrimarySelectionDeviceManagerV1::Global::Global (this=0x555555efa350, __in_chrg=)
at /home/alan/CLionProjects/mir/cmake-build-debug/src/wayland/primary-selection-unstable-v1_wrapper.h:42
#17 0x00007ffff702d056 in (anonymous namespace)::PrimarySelectionGlobal::PrimarySelectionGlobal (this=0x555555efa350, __in_chrg=)
at /home/alan/CLionProjects/mir/src/server/frontend_wayland/primary_selection_v1.cpp:270
#18 0x00007ffff702d93e in std::destroy_at<(anonymous namespace)::PrimarySelectionGlobal> (__location=0x555555efa350) at /usr/include/c++/13/bits/stl_construct.h:88
#19 0x00007ffff702d8e6 in std::_Destroy<(anonymous namespace)::PrimarySelectionGlobal> (__pointer=0x555555efa350) at /usr/include/c++/13/bits/stl_construct.h:149
#20 0x00007ffff702d466 in std::allocator_traits<std::allocator >::destroy<(anonymous namespace)::PrimarySelectionGlobal> (__p=0x555555efa350)
at /usr/include/c++/13/bits/alloc_traits.h:675
#21 std::_Sp_counted_ptr_inplace<(anonymous namespace)::PrimarySelectionGlobal, std::allocator, (__gnu_cxx::_Lock_policy)2>::_M_dispose (this=0x555555efa340)
at /usr/include/c++/13/bits/shared_ptr_base.h:613
#22 0x00007ffff6caf13f in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release (this=0x555555efa340) at /usr/include/c++/13/bits/shared_ptr_base.h:346
#23 0x00007ffff6cb0237 in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::
__shared_count (this=0x555555eee4b0, __in_chrg=)
at /usr/include/c++/13/bits/shared_ptr_base.h:1071
#24 0x00007ffff6cb81d4 in std::__shared_ptr<void, (__gnu_cxx::_Lock_policy)2>::
__shared_ptr (this=0x555555eee4a8, __in_chrg=)
at /usr/include/c++/13/bits/shared_ptr_base.h:1524
#25 0x00007ffff6cb81f4 in std::shared_ptr::~shared_ptr (this=0x555555eee4a8, __in_chrg=) at /usr/include/c++/13/bits/shared_ptr.h:175
#26 0x00007ffff6f2f1f2 in std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, std::shared_ptr >::pair
(this=0x555555eee488, __in_chrg=) at /usr/include/c++/13/bits/stl_pair.h:187
#27 0x00007ffff6f2f21d in std::destroy_at<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, std::shared_ptr > >
(__location=0x555555eee488) at /usr/include/c++/13/bits/stl_construct.h:88
#28 0x00007ffff6f2591b in std::allocator_traits<std::allocator<std::__detail::_Hash_node<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, std::shared_ptr >, true> > >::destroy<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, std::shared_ptr > >
(__p=0x555555eee488, __a=...) at /usr/include/c++/13/bits/alloc_traits.h:560
#29 std::__detail::_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, std::shared_ptr<--Type for more, q to quit, c to continue without paging--
void> >, true> > >::_M_deallocate_node (this=0x555555ec5ba8, __n=0x555555eee480) at /usr/include/c++/13/bits/hashtable_policy.h:2011
#30 0x00007ffff6f2059b in std::__detail::_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, std::shared_ptr >, true> > >::_M_deallocate_nodes (this=0x555555ec5ba8, __n=0x555555eefa00) at /usr/include/c++/13/bits/hashtable_policy.h:2033
#31 0x00007ffff6f1ca8c in std::_Hashtable<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, std::shared_ptr >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, std::shared_ptr > >, std::__detail::_Select1st, std::equal_to<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >, std::hash<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::clear (this=0x555555ec5ba8) at /usr/include/c++/13/bits/hashtable.h:2524
#32 0x00007ffff6f1a5fc in std::_Hashtable<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, std::shared_ptr >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, std::shared_ptr > >, std::__detail::_Select1st, std::equal_to<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >, std::hash<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true> >::
_Hashtable (this=0x555555ec5ba8, __in_chrg=) at /usr/include/c++/13/bits/hashtable.h:1608
#33 0x00007ffff6f19d08 in std::unordered_map<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::shared_ptr, std::hash<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const, std::shared_ptr > > >::~unordered_map (this=0x555555ec5ba8, __in_chrg=)
at /usr/include/c++/13/bits/unordered_map.h:109
#34 0x00007ffff6f19d74 in mir::frontend::WaylandExtensions::~WaylandExtensions (this=0x555555ec5ba0, __in_chrg=)
at /home/alan/CLionProjects/mir/src/server/frontend_wayland/wayland_connector.h:125
#35 0x00007ffff6f12ad0 in (anonymous namespace)::WaylandExtensions::~WaylandExtensions (this=0x555555ec5ba0, __in_chrg=)
at /home/alan/CLionProjects/mir/src/server/frontend_wayland/wayland_default_configuration.cpp:257
#36 0x00007ffff6f12af0 in (anonymous namespace)::WaylandExtensions::~WaylandExtensions (this=0x555555ec5ba0, __in_chrg=)
at /home/alan/CLionProjects/mir/src/server/frontend_wayland/wayland_default_configuration.cpp:257
#37 0x00007ffff6f1d58c in std::default_deletemir::frontend::WaylandExtensions::operator() (this=0x555555742fe0, __ptr=0x555555ec5ba0) at /usr/include/c++/13/bits/unique_ptr.h:99
#38 0x00007ffff6f1ab76 in std::unique_ptr<mir::frontend::WaylandExtensions, std::default_deletemir::frontend::WaylandExtensions >::unique_ptr
(this=0x555555742fe0, __in_chrg=) at /usr/include/c++/13/bits/unique_ptr.h:404
#39 0x00007ffff6f36c95 in mir::frontend::WaylandConnector::WaylandConnector (this=0x555555742f20, __in_chrg=)
at /home/alan/CLionProjects/mir/src/server/frontend_wayland/wayland_connector.cpp:415
#40 0x00007ffff6f349eb in std::destroy_atmir::frontend::WaylandConnector (__location=0x555555742f20) at /usr/include/c++/13/bits/stl_construct.h:88
#41 0x00007ffff6f34889 in std::_Destroymir::frontend::WaylandConnector (__pointer=0x555555742f20) at /usr/include/c++/13/bits/stl_construct.h:149
#42 0x00007ffff6f33baa in std::allocator_traits<std::allocator >::destroymir::frontend::WaylandConnector (__p=0x555555742f20) at /usr/include/c++/13/bits/alloc_traits.h:675
#43 std::_Sp_counted_ptr_inplace<mir::frontend::WaylandConnector, std::allocator, (__gnu_cxx::_Lock_policy)2>::_M_dispose (this=0x555555742f10)
at /usr/include/c++/13/bits/shared_ptr_base.h:613
#44 0x00007ffff6cb10e1 in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release_last_use (this=0x555555742f10) at /usr/include/c++/13/bits/shared_ptr_base.h:175
#45 0x00007ffff6cb0208 in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release_last_use_cold (this=0x555555742f10) at /usr/include/c++/13/bits/shared_ptr_base.h:199
#46 0x00007ffff6caf1e0 in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release (this=0x555555742f10) at /usr/include/c++/13/bits/shared_ptr_base.h:353
#47 0x00007ffff6cb0237 in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::
__shared_count (this=0x5555556eb830, __in_chrg=)
at /usr/include/c++/13/bits/shared_ptr_base.h:1071
#48 0x00007ffff6cb834a in std::__shared_ptr<mir::frontend::Connector, (__gnu_cxx::_Lock_policy)2>::
__shared_ptr (this=0x5555556eb828, __in_chrg=)
at /usr/include/c++/13/bits/shared_ptr_base.h:1524
#49 0x00007ffff6cb836a in std::shared_ptrmir::frontend::Connector::~shared_ptr (this=0x5555556eb828, __in_chrg=) at /usr/include/c++/13/bits/shared_ptr.h:175
#50 0x00007ffff6cb9736 in mir::DisplayServer::Private::~Private (this=0x5555556eb7d0, __in_chrg=) at /home/alan/CLionProjects/mir/src/server/display_server.cpp:71
#51 0x00007ffff6cb7c5c in mir::DisplayServer::~DisplayServer (this=0x7fffffffd1a0, _in_chrg=) at /home/alan/CLionProjects/mir/src/server/display_server.cpp:224
#52 0x00007ffff6cae414 in mir::run_mir(mir::ServerConfiguration&, std::function<void (mir::DisplayServer&)>, std::function<void (int)> const&) (config=..., init=..., terminator
=...)

[Originally noted as https://github.com/canonical/mir/issues/3806]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions