touch-packages team mailing list archive
-
touch-packages team
-
Mailing list archive
-
Message #133107
[Bug 1528135] Re: [regression] Mir servers just segfault just after "Selected driver:" instead of reporting exceptions
mir (0.19.0+16.04.20160128-0ubuntu1) xenial; urgency=medium
** Changed in: mir
Status: Fix Committed => Fix Released
** Also affects: mir (Ubuntu)
Importance: Undecided
Status: New
** Changed in: mir (Ubuntu)
Status: New => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to mir in Ubuntu.
https://bugs.launchpad.net/bugs/1528135
Title:
[regression] Mir servers just segfault just after "Selected driver:"
instead of reporting exceptions
Status in Mir:
Fix Released
Status in Mir 0.18 series:
Won't Fix
Status in mir package in Ubuntu:
Fix Released
Bug description:
Mir server segfaults when trying to report exception - "Error opening
DRM device".
I could not get any workable backtrace, but by deduction was able to
figure out that was the one being thrown. Unfortunately Mir segfaults
before it can report the error to the user. This does not happen in
Mir 0.17.1 at least but does happen with lp:mir ...
Try this from ssh while you're logged in to X, or on the login screen:
$ sudo bin/mir_demo_server --platform-graphics-lib=lib/server-modules/graphics-mesa-kms.so.7
MIR_CLIENT_PLATFORM_PATH=bin/../lib/client-modules/
MIR_SERVER_PLATFORM_PATH=bin/../lib/server-modules/
LD_LIBRARY_PATH=bin/../lib
exec=bin/mir_demo_server.bin
[1450687750.973798] mirserver: Starting
[1450687750.974124] mirserver: Selected driver: mesa-kms (version 0.19.0)
$ echo $?
139
When launched within an X session, after opening /dev/dri/card0 the
kms platform attempts to drmSetInterfaceVersion(drm_fd, {1,4,-1,-1))
that fails with errno 13 Permission denied. Since mir has not switched
vt. Further devices nodes are tried after that. Since none of them is
a card opening the devices fails. Now that failures is thrown as an
exception. Stack unwinding back up to run_mir makes mir unload the
graphics platform.
Then a rethrow of the exception leads to a segmentation fault.
#0 0x00007ffff78dfc3b in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#1 0x00007ffff78e01bf in __gxx_personality_v0 () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#2 0x00007ffff764c203 in _Unwind_RaiseException () from /lib/x86_64-linux-gnu/libgcc_s.so.1
#3 0x00007ffff764c50d in _Unwind_Resume_or_Rethrow () from /lib/x86_64-linux-gnu/libgcc_s.so.1
#4 0x00007ffff78e095c in __cxa_rethrow () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5 0x00007ffff67661f0 in mir::report_exception (out=...) at /home/andreas/mir/mir/src/server/report_exception.cpp:30
#6 0x00007ffff677ef36 in mir::Server::run (this=this@entry=0x7fffffffe1d0) at /home/andreas/mir/mir/src/server/server.cpp:404
#7 0x00007ffff6b1dbb5 in main (argc=2, argv=0x7fffffffe408) at /home/andreas/mir/mir/examples/server_example.cpp:112
#8 0x0000000000400e8e in main (argc=2, argv=0x7fffffffe408) at /home/andreas/mir/mir/examples/mir_demo_server_loader.cpp:40
It seems to try to access unwind / throw location related information.
But those are no longer present since the platform library is already
unloaded.
To manage notifications about this bug go to:
https://bugs.launchpad.net/mir/+bug/1528135/+subscriptions