Opened 8 years ago
Closed 8 years ago
Last modified 7 years ago
#12917 closed Bug Report - General (fixed)
mythfrontend.real crashes since Ubuntu 16.10 upgrade
Reported by: | Owned by: | Peter Bennett | |
---|---|---|---|
Priority: | critical | Milestone: | 0.28.1 |
Component: | MythTV - General | Version: | 0.28.0 |
Severity: | high | Keywords: | mythfrontend stack smashing |
Cc: | Peter Bennett | Ticket locked: | no |
Description
My MythTV worked fine in Ubuntu 16.04.1. Then I upgraded to Ubuntu 16.10, and now the mythfrontend won't start. It errors with a "* stack smashing detected *: /usr/bin/mythfrontend.real terminated" error.
Here's the full startup...
$ mythfrontend
2016-11-04 18:05:12.279618 I Setup Interrupt handler
2016-11-04 18:05:12.279635 I Setup Terminated handler
2016-11-04 18:05:12.279643 I Setup Segmentation fault handler
2016-11-04 18:05:12.279647 I Setup Aborted handler
2016-11-04 18:05:12.279656 I Setup Bus error handler
2016-11-04 18:05:12.279661 I Setup Floating point exception handler
2016-11-04 18:05:12.279666 I Setup Illegal instruction handler
2016-11-04 18:05:12.279671 I Setup Real-time signal 0 handler
2016-11-04 18:05:12.279677 I Setup User defined signal 1 handler
2016-11-04 18:05:12.279681 I Setup User defined signal 2 handler
2016-11-04 18:05:12.279686 I Setup Hangup handler
2016-11-04 18:05:12.279769 C mythfrontend version: fixes/0.28 [v0.28-76-g7f8f168] www.mythtv.org
2016-11-04 18:05:12.279774 C Qt version: compile: 5.5.1, runtime: 5.6.1
2016-11-04 18:05:12.279778 N Enabled verbose msgs: general
2016-11-04 18:05:12.279788 N Setting Log Level to LOG_INFO
2016-11-04 18:05:12.290564 N Using runtime prefix = /usr
2016-11-04 18:05:12.290574 N Using configuration directory = /home/alheynneman/.mythtv
2016-11-04 18:05:12.290635 I Added logging to the console
2016-11-04 18:05:12.290679 I Assumed character encoding: en_US.UTF-8
2016-11-04 18:05:12.291530 N Empty LocalHostName?.
2016-11-04 18:05:12.291538 I Using localhost value of Satellite-E55
2016-11-04 18:05:12.298361 N Setting QT default locale to EN_US
2016-11-04 18:05:12.298372 I Current locale EN_US
2016-11-04 18:05:12.298411 N Reading locale defaults from /usr/share/mythtvlocales/en_us.xml
2016-11-04 18:05:12.304742 I ScreenSaverDBus: Created for DBus service: org.freedesktop.ScreenSaver?
2016-11-04 18:05:12.307625 I ScreenSaverDBus: Created for DBus service: org.gnome.SessionManager?
2016-11-04 18:05:12.308425 I Starting process manager
2016-11-04 18:05:12.308486 I Starting process signal handler
2016-11-04 18:05:12.308513 I Starting IO manager (write)
2016-11-04 18:05:12.309883 I Starting IO manager (read)
2016-11-04 18:05:12.359549 I ScreenSaverX11Private: DPMS is active.
2016-11-04 18:05:12.386370 N Desktop video mode: 1920x1080 60.060 Hz
2016-11-04 18:05:12.391094 I Added syslogging
2016-11-04 18:05:13.051946 I Listening on TCP 127.0.0.1:6547
2016-11-04 18:05:13.051991 I Listening on TCP 192.168.0.100:6547
2016-11-04 18:05:13.052171 I Listening on TCP [::1]:6547
2016-11-04 18:05:13.052305 I Listening on TCP [fe80::221a:6ff:fed8:65ae%eth0]:6547
2016-11-04 18:05:14.343496 I Loading en_us translation for module mythfrontend
2016-11-04 18:05:14.359089 I LIRC: Successfully initialized '/var/run/lirc/lircd' using '/home/alheynneman/.mythtv/lircrc' config
2016-11-04 18:05:14.359183 I No joystick configuration found, not enabling joystick control
* stack smashing detected *: /usr/bin/mythfrontend.real terminated
2016-11-04 18:05:14.455746 E CECAdapter: Failed to find any CEC devices. Handling Aborted Aborted (core dumped)
Attachments (4)
Change History (47)
comment:1 Changed 8 years ago by
comment:2 Changed 8 years ago by
The Nov 6 update did not do anything to address stack smashing. The change was to the On Screen Display during playback. So unless you were getting stack smashing during playback, this did not affect it.
If you are still affected by seg faults or stack smashing errors, please get a backtrace and attach it here. It will be helpful if you install the debug package so that the backtrace is more useful.
comment:3 Changed 8 years ago by
Funny enough... I was stack smashing before the Nov 6 update, and I'm not stack smashing now... but I am seg faulting on exiting the mythfrontend. I reported this latest crash at https://bugs.launchpad.net/bugs/1639590 and I think that all of the logs might be there that you need. If not, please instruct me on how to get the backtrace. I've installed the debug package. Please advise.
comment:4 Changed 8 years ago by
In Ubuntu 16.10, MythTV frontend crashed with "stack smashing" error until this release. Now it runs, but got this crash on quitting the frontend. Ubuntu 16.10. ProblemType: Crash DistroRelease: Ubuntu 16.10 Package: mythtv-frontend 2:0.28.0+fixes.20161106.1434df8-0ubuntu0mythbuntu2 [origin: LP-PPA-mythbuntu-0.28] ProcVersionSignature: Ubuntu 4.8.0-26.28-generic 4.8.0 Uname: Linux 4.8.0-26-generic x86_64 NonfreeKernelModules: wl .var.log.mythtv.mythmediaserver.log: ApportVersion: 2.20.3-0ubuntu8 Architecture: amd64 CrashCounter: 1 CrashDB: mythbuntu CurrentDesktop: Unity Date: Sun Nov 6 07:45:39 2016 ExecutablePath: /usr/bin/mythfrontend.real InstallationDate: Installed on 2014-05-10 (911 days ago) InstallationMedia: Ubuntu 14.04 LTS "Trusty Tahr" - Release amd64 (20140417) Installed_mythtv_dbg: 0.0 ProcCmdline: /usr/bin/mythfrontend.real --syslog local7 Signal: 11 SourcePackage: mythtv StacktraceTop: QNetworkConfiguration::~QNetworkConfiguration() () from /usr/lib/x86_64-linux-gnu/libQt5Network.so.5 ?? () from /usr/lib/x86_64-linux-gnu/libQt5Network.so.5 ?? () from /usr/lib/x86_64-linux-gnu/libQt5Network.so.5 QObject::~QObject() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 QNetworkAccessManager::~QNetworkAccessManager() () from /usr/lib/x86_64-linux-gnu/libQt5Network.so.5 Title: mythfrontend.real crashed with SIGSEGV in QNetworkConfiguration::~QNetworkConfiguration() UpgradeStatus: Upgraded to yakkety on 2016-10-31 (5 days ago) UserGroups: adm audio cdrom dialout dip fax fuse kismet lpadmin mythtv netdev plugdev sambashare scanner sudo vboxusers video wireshark
comment:5 Changed 8 years ago by
- Turn on core dumps by running this
ulimit -c unlimited
- Run mythfrontend from your home directory by running mythfrontend.real from a command prompt in the home directory
- After it crashes there should be a file called core in your home directory. run this
cd gdb /usr/bin/mythfrontend.real core bt
If the executable or the core file is in a different place substitute the correct executable or core file name and path.
comment:6 Changed 8 years ago by
I did a man ulimit
to see what the -c option does, and there's no description. How can I check what it's set to now, so I can set it back later. I don't want a core dump everytime.
In step 3, what is the bt
command do? I don't see a man page for that at all.
Were you able to look at all of the files that got uploaded at https://bugs.launchpad.net/bugs/1639590?
Thanks for your help!
comment:7 Changed 8 years ago by
ulimit is a subcommand of bash. To see a description use "man bash" and search for ulimit.
ulimit only takes effect for one session. As soon as you log out of the command prompt it resets.
ubuntu normally sets the limit for coredumps to 0. If you type "ulimit -c" before you set it to unlimited, it will tell you the current setting.
bt is a subcommand of gdb. To find out about it run "gdb" then type "help bt"
Instead of running bt, it would be better to run
thread apply all bt
This will give the backtrace for all threads,
That bugs.launchpad link you supplied gives me "page not found".
comment:8 follow-up: 10 Changed 8 years ago by
I am working with the same version of mythtv on Ubuntu 16.04 and this started with a recent update to a dependency. I'm currently working to narrow it down. My backtrace:
Function "qFatal" not defined. Breakpoint 1 (qFatal) pending. [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". [New Thread 0x7fffd9b2c700 (LWP 22110)] [New Thread 0x7fffcccff700 (LWP 22112)] [New Thread 0x7fffcc4fe700 (LWP 22113)] [New Thread 0x7fffcbcfd700 (LWP 22114)] [New Thread 0x7fffcb4fc700 (LWP 22115)] [New Thread 0x7fffcacfb700 (LWP 22116)] [New Thread 0x7fffca4fa700 (LWP 22117)] [New Thread 0x7fffc94d7700 (LWP 22126)] [New Thread 0x7fffc8cd6700 (LWP 22127)] [New Thread 0x7fffabfff700 (LWP 22128)] [New Thread 0x7fffab7fe700 (LWP 22129)] [New Thread 0x7fffaaffd700 (LWP 22132)] [New Thread 0x7fffaa3ec700 (LWP 22133)] [New Thread 0x7fffa9beb700 (LWP 22135)] [New Thread 0x7fffa93ea700 (LWP 22136)] [New Thread 0x7fffa8be9700 (LWP 22137)] [New Thread 0x7fff0ffff700 (LWP 22138)] Thread 1 "mythfrontend.re" received signal SIGSEGV, Segmentation fault. 0x00007fffecb6af29 in QGLFormat::openGLVersionFlags() () from /usr/lib/x86_64-linux-gnu/libQt5OpenGL.so.5 Thread 18 (Thread 0x7fff0ffff700 (LWP 22138)): #0 pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225 No locals. #1 0x00007ffff42fc996 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #2 0x00007ffff678d3f9 in MythSignalingTimer::run (this=0xca9cf0) at mythsignalingtimer.cpp:84 locker = {val = 13278497} #3 0x00007ffff6753e70 in MThreadInternal::run (this=0xa830a0) at mthread.cpp:79 No locals. #4 0x00007ffff42fb7be in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #5 0x00007ffff404070a in start_thread (arg=0x7fff0ffff700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fff0ffff700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140733461821184, -3446743742818391560, 0, 140737488344127, 140733461821888, 13272432, 3446567820366866936, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #6 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 17 (Thread 0x7fffa8be9700 (LWP 22137)): #0 0x00007ffff34cb9e3 in select () at ../sysdeps/unix/syscall-template.S:84 No locals. #1 0x00007ffff6449009 in LIRC::run (this=0xbe8de0) at lirc.cpp:462 readfds = {fds_bits = {70368744177664, 0 <repeats 15 times>}} timeout = {tv_sec = 0, tv_usec = 307902} ret = 32767 codes = {<QListSpecialMethods<QByteArray>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = -1}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x25}, d = 0x25}} __FUNCTION__ = "run" #2 0x00007ffff6753e70 in MThreadInternal::run (this=0xcadab0) at mthread.cpp:79 No locals. #3 0x00007ffff42fb7be in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #4 0x00007ffff404070a in start_thread (arg=0x7fffa8be9700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fffa8be9700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736024450816, -3446743742818391560, 0, 140737488343871, 140736024451520, 13577440, 3446913628584962552, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #5 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 16 (Thread 0x7fffa93ea700 (LWP 22136)): #0 0x00007ffff404956d in read () at ../sysdeps/unix/syscall-template.S:84 No locals. #1 0x00007fffed3b9d87 in ?? () from /usr/lib/x86_64-linux-gnu/libdns_sd.so.1 No symbol table info available. #2 0x00007fffed3b9ecb in ?? () from /usr/lib/x86_64-linux-gnu/libdns_sd.so.1 No symbol table info available. #3 0x00007ffff404070a in start_thread (arg=0x7fffa93ea700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fffa93ea700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736032843520, -3446743742818391560, 0, 140737488344223, 140736032844224, 13293224, 3446914728633461240, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #4 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 15 (Thread 0x7fffa9beb700 (LWP 22135)): #0 0x00007ffff4049c6d in nanosleep () at ../sysdeps/unix/syscall-template.S:84 No locals. #1 0x00007ffff43abbfd in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #2 0x00007ffff42fabb8 in QThread::msleep(unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #3 0x00007ffff6753f5d in MThreadInternal::MSleep (time=100) at mthread.cpp:92 No locals. #4 0x00007ffff67535a8 in MThread::msleep (time=100) at mthread.cpp:342 No locals. #5 0x00007ffff6b6ea96 in TaskQueue::run (this=0xce6120) at taskqueue.cpp:150 ttNow = {tv_sec = 1478481543, tv_usec = 807613} pTask = 0xce2960 __FUNCTION__ = "run" #6 0x00007ffff6753e70 in MThreadInternal::run (this=0xce6250) at mthread.cpp:79 No locals. #7 0x00007ffff42fb7be in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #8 0x00007ffff404070a in start_thread (arg=0x7fffa9beb700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fffa9beb700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736041236224, -3446743742818391560, 0, 140737488342959, 140736041236928, 13525536, 3446915826534476280, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #9 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 14 (Thread 0x7fffaa3ec700 (LWP 22133)): #0 0x00007ffff34cb9e3 in select () at ../sysdeps/unix/syscall-template.S:84 No locals. #1 0x00007ffff6b68742 in SSDP::run (this=0xce5030) at ssdp.cpp:298 nMaxSocket = 38 count = 0 read_set = {fds_bits = {446676598784, 0 <repeats 15 times>}} timeout = {tv_sec = 0, tv_usec = 983672} __FUNCTION__ = "run" #2 0x00007ffff6753e70 in MThreadInternal::run (this=0xce28c0) at mthread.cpp:79 No locals. #3 0x00007ffff42fb7be in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #4 0x00007ffff404070a in start_thread (arg=0x7fffaa3ec700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fffaa3ec700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736049628928, -3446743742818391560, 0, 140737488343087, 140736049629632, 13539600, 3446908130489952760, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #5 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 13 (Thread 0x7fffaaffd700 (LWP 22132)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 No locals. #1 0x00007ffff4926bd4 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Script.so.5 No symbol table info available. #2 0x00007ffff4926c19 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Script.so.5 No symbol table info available. #3 0x00007ffff404070a in start_thread (arg=0x7fffaaffd700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fffaaffd700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736062281472, -3446743742818391560, 0, 140737488343103, 140736062282176, 13538384, 3446908670045219320, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #4 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 12 (Thread 0x7fffab7fe700 (LWP 22129)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 No locals. #1 0x00007ffff42fca5b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #2 0x00007ffff688df9d in MythSystemLegacyIOHandler::run (this=0xc2bc70) at mythsystemunix.cpp:102 locker = {val = 12762257} __FUNCTION__ = "run" #3 0x00007ffff6753e70 in MThreadInternal::run (this=0xbf28f0) at mthread.cpp:79 No locals. #4 0x00007ffff42fb7be in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #5 0x00007ffff404070a in start_thread (arg=0x7fffab7fe700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fffab7fe700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736070674176, -3446743742818391560, 0, 140737488342735, 140736070674880, 12828192, 3446909770093718008, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #6 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 11 (Thread 0x7fffabfff700 (LWP 22128)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 No locals. #1 0x00007ffff42fca5b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #2 0x00007ffff688df9d in MythSystemLegacyIOHandler::run (this=0xc1b7b0) at mythsystemunix.cpp:102 locker = {val = 12695505} __FUNCTION__ = "run" #3 0x00007ffff6753e70 in MThreadInternal::run (this=0xbf06d0) at mthread.cpp:79 No locals. #4 0x00007ffff42fb7be in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #5 0x00007ffff404070a in start_thread (arg=0x7fffabfff700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fffabfff700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736079066880, -3446743742818391560, 0, 140737488342735, 140736079067584, 12761360, 3446910867994733048, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #6 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 10 (Thread 0x7fffc8cd6700 (LWP 22127)): #0 0x00007ffff4049c6d in nanosleep () at ../sysdeps/unix/syscall-template.S:84 No locals. #1 0x00007ffff68914d7 in MythSystemLegacySignalManager::run (this=0xbfc250) at mythsystemunix.cpp:515 ts = {tv_sec = 0, tv_nsec = 50000000} __FUNCTION__ = "run" #2 0x00007ffff6753e70 in MThreadInternal::run (this=0xbef9b0) at mthread.cpp:79 No locals. #3 0x00007ffff42fb7be in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #4 0x00007ffff404070a in start_thread (arg=0x7fffc8cd6700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fffc8cd6700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736562292480, -3446743742818391560, 0, 140737488342735, 140736562293184, 12694832, 3446702086950119928, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #5 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 9 (Thread 0x7fffc94d7700 (LWP 22126)): #0 pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225 No locals. #1 0x00007ffff42fc996 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #2 0x00007ffff688f23a in MythSystemLegacyManager::run (this=0xc108b0) at mythsystemunix.cpp:283 ms = 0xc13320 pid = -1 status = 32512 i = {i = 0xc3c5e8} next = {i = 0x0} now = 1478481542 __FUNCTION__ = "run" #3 0x00007ffff6753e70 in MThreadInternal::run (this=0xbf1850) at mthread.cpp:79 No locals. #4 0x00007ffff42fb7be in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #5 0x00007ffff404070a in start_thread (arg=0x7fffc94d7700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fffc94d7700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736570685184, -3446743742818391560, 0, 140737488342735, 140736570685888, 12567680, 3446703184851134968, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #6 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 8 (Thread 0x7fffca4fa700 (LWP 22117)): #0 pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225 No locals. #1 0x00007ffff42fc996 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #2 0x00007ffff6827f8e in LoggerThread::run (this=0xbff7b0) at logging.cpp:399 item = 0xccbba0 __FUNCTION__ = "run" dieNow = false qLock = {val = 140737332206393} #3 0x00007ffff6753e70 in MThreadInternal::run (this=0xbf3920) at mthread.cpp:79 No locals. #4 0x00007ffff42fb7be in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #5 0x00007ffff404070a in start_thread (arg=0x7fffca4fa700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fffca4fa700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736587605760, -3446743742818391560, 0, 140737488343855, 140736587606464, 12581280, 3446696604424366584, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #6 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 7 (Thread 0x7fffcacfb700 (LWP 22116)): #0 pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225 No locals. #1 0x00007ffff42fc996 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #2 0x00007ffff6835d0f in LogForwardThread::run (this=0x7fffb4003280) at loggingserver.cpp:1173 lock = {val = 140737332206569} processed = 1 loggers = {<QListSpecialMethods<LoggerBase*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = -1}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7fffcacfad50}, d = 0x7fffcacfad50}} #3 0x00007ffff6753e70 in MThreadInternal::run (this=0x7fffb4003530) at mthread.cpp:79 No locals. #4 0x00007ffff42fb7be in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #5 0x00007ffff404070a in start_thread (arg=0x7fffcacfb700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fffcacfb700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736595998464, -3446743742818391560, 0, 140736604388111, 140736595999168, 140736213300704, 3446697702325381624, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #6 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 6 (Thread 0x7fffcb4fc700 (LWP 22115)): #0 0x00007ffff34c9b5d in poll () at ../sysdeps/unix/syscall-template.S:84 No locals. #1 0x00007fffe91b539c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #2 0x00007fffe91b54ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #3 0x00007ffff45327eb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #4 0x00007ffff44d9b4a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #5 0x00007ffff42f6834 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #6 0x00007ffff6753ec6 in MThreadInternal::exec (this=0xbf3610) at mthread.cpp:85 ph = {<QObject> = {<No data fields>}, purgeTimer = 1} #7 0x00007ffff6753554 in MThread::exec (this=0xbf26a0) at mthread.cpp:327 No locals. #8 0x00007ffff68351f1 in LogServerThread::run (this=0xbf2690) at loggingserver.cpp:865 locker = {val = 140737332206504} abortThread = false #9 0x00007ffff6753e70 in MThreadInternal::run (this=0xbf3610) at mthread.cpp:79 No locals. #10 0x00007ffff42fb7be in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #11 0x00007ffff404070a in start_thread (arg=0x7fffcb4fc700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fffcb4fc700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736604391168, -3446743742818391560, 0, 140737488343535, 140736604391872, 12582144, 3446698802373880312, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #12 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 5 (Thread 0x7fffcbcfd700 (LWP 22114)): #0 syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38 No locals. #1 0x00007fffe91f9d4a in g_cond_wait_until () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #2 0x00007fffe9189999 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #3 0x00007fffe9189fbb in g_async_queue_timeout_pop () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #4 0x00007fffe91dc61a in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #5 0x00007fffe91dbbc5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #6 0x00007ffff404070a in start_thread (arg=0x7fffcbcfd700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fffcbcfd700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736612783872, -3446743742818391560, 0, 140737488341631, 140736612784576, 12244768, 3446699900274895352, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #7 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 4 (Thread 0x7fffcc4fe700 (LWP 22113)): #0 0x00007ffff34c9b5d in poll () at ../sysdeps/unix/syscall-template.S:84 No locals. #1 0x00007fffe91b539c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #2 0x00007fffe91b5722 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #3 0x00007fffd33f4916 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0 No symbol table info available. #4 0x00007fffe91dbbc5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #5 0x00007ffff404070a in start_thread (arg=0x7fffcc4fe700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fffcc4fe700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736621176576, -3446743742818391560, 0, 140737488339007, 140736621177280, 12251360, 3446709796416416248, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #6 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 3 (Thread 0x7fffcccff700 (LWP 22112)): #0 0x00007ffff34c9b5d in poll () at ../sysdeps/unix/syscall-template.S:84 No locals. #1 0x00007fffe91b539c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #2 0x00007fffe91b54ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #3 0x00007fffe91b54e9 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #4 0x00007fffe91dbbc5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #5 0x00007ffff404070a in start_thread (arg=0x7fffcccff700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fffcccff700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736629569280, -3446743742818391560, 0, 140737488338655, 140736629569984, 0, 3446710894317431288, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #6 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 2 (Thread 0x7fffd9b2c700 (LWP 22110)): #0 0x00007ffff34c9b5d in poll () at ../sysdeps/unix/syscall-template.S:84 No locals. #1 0x00007fffe6379c62 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1 No symbol table info available. #2 0x00007fffe637b8d7 in xcb_wait_for_event () from /usr/lib/x86_64-linux-gnu/libxcb.so.1 No symbol table info available. #3 0x00007fffdc247629 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5 No symbol table info available. #4 0x00007ffff42fb7be in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 No symbol table info available. #5 0x00007ffff404070a in start_thread (arg=0x7fffd9b2c700) at pthread_create.c:333 __res = <optimized out> pd = 0x7fffd9b2c700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736845760256, -3446743742818391560, 0, 140737488343183, 140736845760960, 10740304, 3446669570826463736, 3446763189047945720}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #6 0x00007ffff34d582d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109 No locals. Thread 1 (Thread 0x7fffdc645900 (LWP 22087)): #0 0x00007fffecb6af29 in QGLFormat::openGLVersionFlags() () from /usr/lib/x86_64-linux-gnu/libQt5OpenGL.so.5 No symbol table info available. #1 0x00007ffff645ebc3 in MythRenderOpenGL::Create (painter=..., device=0x0) at mythrender_opengl.cpp:114 format = {d = 0xaa9b80} setswapinterval = false synctovblank = 1 __FUNCTION__ = "Create" dummy = 0xcba660 qglFormat = {d = 0xccbd30} openGLVersionFlags = 32767 #2 0x00007ffff62c919d in MythMainWindow::Init (this=0xcf2370, forcedpainter=...) at mythmainwindow.cpp:1160 gl = 0x7fffffffd6c0 flags = {i = 2049} inwindow = false fullscreen = true __FUNCTION__ = "Init" painter = {static null = {<No data fields>}, d = 0xcb8800} #3 0x000000000046f619 in main (argc=5, argv=0x7fffffffe108) at main.cpp:1886 bPromptForBackend = false bBypassAutoDiscovery = false cmdline = {<MythCommandLineParser> = {_vptr.MythCommandLineParser = 0x9b2ca8 <vtable for MythFrontendCommandLineParser+16>, m_appname = {static null = {<No data fields>}, d = 0xa18580}, m_optionedArgs = {d = 0xa18c00}, m_namedArgs = {d = 0xa18b70}, m_passthroughActive = false, m_overridesImported = true, m_verbose = false}, <No data fields>} callCleanup = {m_cleanFunction = 0x461961 <(anonymous namespace)::cleanup()>} signallist = {<QListSpecialMethods<int>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = -1}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0xbedbd0}, d = 0xbedbd0}} retval = 0 ResetSettings = false __FUNCTION__ = "main" fileprefix = {static null = {<No data fields>}, d = 0xc00f70} dir = {d_ptr = {d = 0xce3ce0}} bonjour = {d = 0xce63c0} themename = {static null = {<No data fields>}, d = 0xcfc310} themedir = {static null = {<No data fields>}, d = 0xbe7930} mainWindow = 0xcf2370 mon = 0x9b0708 networkControl = 0x724093 themeUpdateChecker = 0x7ffff453a8f9 sysEventHandler = 0x7ffff4390182 <QString::fromUtf8_helper(char const*, int)+34> bcm = {<QObject> = {<No data fields>}, static staticMetaObject = {d = {superdata = 0x7ffff471cb00 <QObject::staticMetaObject>, stringdata = 0x71e780 <qt_meta_stringdata_BackendConnectionManager>, data = 0x71e800 <qt_meta_data_BackendConnectionManager>, static_metacall = 0x6da830 <BackendConnectionManager::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, m_reconnecting = 0x9b0708, m_reconnect_timer = 0x6def94 <__static_initialization_and_destruction_0(int, int)+74>, m_reconnect_again = 80} housekeeping = 0xa160c0 ret = 0
comment:9 Changed 8 years ago by
my backtrace for mythfrontend.real crashing on exit
$ gdb /usr/bin/mythfrontend.real core GNU gdb (Ubuntu 7.11.90.20161005-0ubuntu1) 7.11.90.20161005-git Copyright (C) 2016 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>. Find the GDB manual and other documentation resources online at: <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from /usr/bin/mythfrontend.real...Reading symbols from /usr/lib/debug/.build-id/9b/d64c118e069acb003619323e8a49774041b906.debug...done. done. warning: core file may not match specified executable file. [New LWP 17462] [New LWP 17465] [New LWP 17466] [New LWP 17479] [New LWP 17495] [New LWP 17499] [New LWP 17501] [New LWP 17500] [New LWP 17502] [New LWP 17464] [New LWP 17467] [New LWP 17503] [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Core was generated by `mythfrontend.real'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x00007efc54c285df in QNetworkConfiguration::~QNetworkConfiguration() () from /usr/lib/x86_64-linux-gnu/libQt5Network.so.5 [Current thread is 1 (Thread 0x7efc3a684500 (LWP 17462))] (gdb) thread apply all bt Thread 12 (Thread 0x7efb077fc700 (LWP 17503)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007efc47ec03c4 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5 #2 0x00007efc47ec061a in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5 #3 0x00007efc48fc7591 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5 #4 0x00007efc50d2f70a in start_thread (arg=0x7efb077fc700) at pthread_create.c:333 #5 0x00007efc501c10af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 Thread 11 (Thread 0x7efc2cf02700 (LWP 17467)): #0 0x00007efc501b50bd in poll () at ../sysdeps/unix/syscall-template.S:84 #1 0x00007efc45f099d6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007efc45f09aec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #3 0x00007efc5122148f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #4 0x00007efc511c90fa in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>---Type <return> to continue, or q <return> to quit--- ) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #5 0x00007efc50feed43 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #6 0x00007efc51433575 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5 #7 0x00007efc50ff3c68 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #8 0x00007efc50d2f70a in start_thread (arg=0x7efc2cf02700) at pthread_create.c:333 #9 0x00007efc501c10af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 Thread 10 (Thread 0x7efc2e705700 (LWP 17464)): #0 0x00007efc501b50bd in poll () at ../sysdeps/unix/syscall-template.S:84 #1 0x00007efc45f099d6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007efc45f09aec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #3 0x00007efc2e70d46d in ?? () from /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so #4 0x00007efc45f31305 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #5 0x00007efc50d2f70a in start_thread (arg=0x7efc2e705700) at pthread_create.c:333 #6 0x00007efc501c10af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 ---Type <return> to continue, or q <return> to quit--- Thread 9 (Thread 0x7efb07ffd700 (LWP 17502)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007efc48ca6da3 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5 #2 0x00007efc48fc7591 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5 #3 0x00007efc50d2f70a in start_thread (arg=0x7efb07ffd700) at pthread_create.c:333 #4 0x00007efc501c10af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 Thread 8 (Thread 0x7efb517fa700 (LWP 17500)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007efc48ca6da3 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5 #2 0x00007efc48fc7591 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5 #3 0x00007efc50d2f70a in start_thread (arg=0x7efb517fa700) at pthread_create.c:333 #4 0x00007efc501c10af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 ---Type <return> to continue, or q <return> to quit--- Thread 7 (Thread 0x7efb50ff9700 (LWP 17501)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007efc48ca6da3 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5 #2 0x00007efc48fc7591 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5 #3 0x00007efc50d2f70a in start_thread (arg=0x7efb50ff9700) at pthread_create.c:333 #4 0x00007efc501c10af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 Thread 6 (Thread 0x7efb51ffb700 (LWP 17499)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007efc48ca5d74 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5 #2 0x00007efc48fc7591 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5 #3 0x00007efc50d2f70a in start_thread (arg=0x7efb51ffb700) at pthread_create.c:333 #4 0x00007efc501c10af in clone () ---Type <return> to continue, or q <return> to quit--- at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 Thread 5 (Thread 0x7efb537fe700 (LWP 17495)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007efc48f9796b in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5 #2 0x00007efc48f979a9 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5 #3 0x00007efc50d2f70a in start_thread (arg=0x7efb537fe700) at pthread_create.c:333 #4 0x00007efc501c10af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 Thread 4 (Thread 0x7efc17fff700 (LWP 17479)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 #1 0x00007efc51625574 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Script.so.5 #2 0x00007efc516255b9 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Script.so.5 #3 0x00007efc50d2f70a in start_thread (arg=0x7efc17fff700) at pthread_create.c:333 ---Type <return> to continue, or q <return> to quit--- #4 0x00007efc501c10af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 Thread 3 (Thread 0x7efc2d703700 (LWP 17466)): #0 0x00007efc501b50bd in poll () at ../sysdeps/unix/syscall-template.S:84 #1 0x00007efc45f099d6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007efc45f09d62 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #3 0x00007efc359b94e6 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0 #4 0x00007efc45f31305 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #5 0x00007efc50d2f70a in start_thread (arg=0x7efc2d703700) at pthread_create.c:333 #6 0x00007efc501c10af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 Thread 2 (Thread 0x7efc2df04700 (LWP 17465)): #0 0x00007efc501b50bd in poll () at ../sysdeps/unix/syscall-template.S:84 #1 0x00007efc45f099d6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007efc45f09aec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #3 0x00007efc45f09b31 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #4 0x00007efc45f31305 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #5 0x00007efc50d2f70a in start_thread (arg=0x7efc2df04700) ---Type <return> to continue, or q <return> to quit--- at pthread_create.c:333 #6 0x00007efc501c10af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105 Thread 1 (Thread 0x7efc3a684500 (LWP 17462)): #0 0x00007efc54c285df in QNetworkConfiguration::~QNetworkConfiguration() () from /usr/lib/x86_64-linux-gnu/libQt5Network.so.5 #1 0x00007efc54bf3340 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Network.so.5 #2 0x00007efc54bf3489 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Network.so.5 #3 0x00007efc512002c7 in QObject::~QObject() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 #4 0x00007efc54bee2fa in QNetworkAccessManager::~QNetworkAccessManager() () from /usr/lib/x86_64-linux-gnu/libQt5Network.so.5 #5 0x00007efc531c2467 in MythNetworkAccessManager::~MythNetworkAccessManager ( this=0x561c0225c1b0, __in_chrg=<optimized out>) at mythuiwebbrowser.h:58 #6 0x00007efc531c2484 in MythNetworkAccessManager::~MythNetworkAccessManager ( this=0x561c0225c1b0, __in_chrg=<optimized out>) at mythuiwebbrowser.h:58 #7 0x00007efc5313669f in DestroyNetworkAccessManager () at mythuiwebbrowser.cpp:100 #8 0x00007efc500f32e0 in __run_exit_handlers (status=0, listp=0x7efc5047a5d8 <__exit_funcs>, ---Type <return> to continue, or q <return> to quit--- run_list_atexit=run_list_atexit@entry=true, run_dtors=run_dtors@entry=true) at exit.c:83 #9 0x00007efc500f333a in __GI_exit (status=<optimized out>) at exit.c:105 #10 0x00007efc500d93f8 in __libc_start_main ( main=0x561c002fb95d <main(int, char**)>, argc=1, argv=0x7ffd7a127f28, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffd7a127f18) at ../csu/libc-start.c:325 #11 0x0000561c002ee80a in _start () (gdb) quit
comment:10 Changed 8 years ago by
Replying to jacob@…:
I am working with the same version of mythtv on Ubuntu 16.04 and this started with a recent update to a dependency. I'm currently working to narrow it down. My backtrace:
This is a different problem from the one in this ticket. Your problem may be related to the Nvidia drivers (version 304.132) recently released. Problems with it were reported in the mailing list. See http://www.gossamer-threads.com/lists/mythtv/users/604163#604163 Check if you have that version and if so try to downgrade to the prior version.
This should be on a separate ticket.
comment:11 Changed 8 years ago by
Cc: | Peter Bennett added |
---|
If anybody else has the problem with frontend crashing on startup with Ubuntu 16.10 please add a comment here. It may be an anomaly with just one user's installation.
comment:12 Changed 8 years ago by
The stack smashing error on mythfrontend startup seemingly went away with the Nov 6 release. I'm still concerned about the crash on exit now. Did my backtrace give you any clues? Thanks for any help!
comment:13 follow-up: 17 Changed 8 years ago by
It is failing in QNetworkConfiguration::~QNetworkConfiguration. This is a QT provided function, and it is not clear why that would crash. I do not have 16.10 installed and had not intended to installl it. I want to find out if anybody else has this so that I know if there will be any chance of recreating the error on my system.
comment:14 Changed 8 years ago by
I don't know if testing in a VirtualBox? environment running a 16.10 guest would show the error? At least it wouldn't disrupt your current system.
comment:15 Changed 8 years ago by
Spurious segfaults from QNetworkConfiguration can occur due to using cached files from a previous Qt version. When changing Qt versions ensure you clean out ~/.mythtv/cache to avoid chasing ghosts.
comment:16 Changed 8 years ago by
I renamed ~/.mythtv/cache to ~/.mythtv/cache.HOLD and started Mythfrontend. Then I exited and got the same crash.
comment:17 follow-up: 18 Changed 8 years ago by
Replying to pbennett:
It is failing in QNetworkConfiguration::~QNetworkConfiguration. This is a QT provided function, and it is not clear why that would crash. I do not have 16.10 installed and had not intended to installl it. I want to find out if anybody else has this so that I know if there will be any chance of recreating the error on my system.
Peter, I have one backtrace from 11/7 that's in QNetworkConfiguration::~QNetworkConfiguration(). I haven't been able to duplicate it at will.
And I'm running 16.10 (not in a VM.) Also, no "stack smashing detected" in the FE log.
In my single case, it doesn't appear to be a problem at startup. BT and FE log attached.
Changed 8 years ago by
Attachment: | gdb-mythfrontend-11867.txt added |
---|
Changed 8 years ago by
Attachment: | mythfrontend.20161107223307.11867.log added |
---|
comment:18 follow-up: 20 Changed 8 years ago by
Status: | new → infoneeded_new |
---|
Replying to Bill Meek <keemllib@…>:
Replying to pbennett:
It is failing in QNetworkConfiguration::~QNetworkConfiguration. This is a QT provided function, and it is not clear why that would crash. I do not have 16.10 installed and had not intended to installl it. I want to find out if anybody else has this so that I know if there will be any chance of recreating the error on my system.
Peter, I have one backtrace from 11/7 that's in QNetworkConfiguration::~QNetworkConfiguration(). I haven't been able to duplicate it at will.
And I'm running 16.10 (not in a VM.) Also, no "stack smashing detected" in the FE log.
In my single case, it doesn't appear to be a problem at startup. BT and FE log attached.
Bill, if you have the core file for that crash and are able to re-run gdb on it, can you first install all the debug information for Qt. That way the stack traces will be more informative in the Qt code.
Regards Stuart
comment:19 Changed 8 years ago by
If you tell me specifically which additional debug file to install, I'll be glad to do another BT for you.
Recall, that with the Nov 6 release, the stack smashing crash is gone, but now it crashes in QNetworkConfiguration::~QNetworkConfiguration() on exit, right after it shuts down sysloging.
comment:20 Changed 8 years ago by
Replying to stuarta:
Bill, if you have the core file for that crash and are able to re-run gdb on it, can you first install all the debug information for Qt. That way the stack traces will be more informative in the Qt code.
Didn't have the original core,but another one fired. Attached new gdb and log. sudo apt-get install qtbase5-dbg for anyone else needing the symbols.
Changed 8 years ago by
Attachment: | gdb-mythfrontend-25942.txt added |
---|
Changed 8 years ago by
Attachment: | mythfrontend.20161111173054.25942.log added |
---|
comment:21 Changed 8 years ago by
Oh good. It looks like you're seeing the segfault crash on exiting the FE. Let me know if you need another BT from me.
comment:22 Changed 8 years ago by
Owner: | set to Peter Bennett |
---|---|
Status: | infoneeded_new → assigned |
I am able to recreate this. With a yakkety chroot, frontend crashes with this segfault every time you exit. This is even if you do nothing, just start the frontend, and immediately exit. I will trace this and see what I can find.
I did try clearing out the ~/.mythtv directory in case a left over cache was causing this, that made no difference.
comment:24 follow-up: 29 Changed 8 years ago by
QT 5.6.1 seg fault in ~QNetworkConfiguration during exit from program.
According to the QT Documentation QNetworkAccessManager uses by default the QNetworkConfiguration returned by QNetworkConfigurationManager::defaultConfiguration(). It is not clear which QNetworkConfigurationManager object that method is called on as it is not a static method. It seems possible that by default the same configuration object is used by different QNetworkAccessManager objects. When the QNetworkAccessManager in mythuiwebbrowser is deleted, there is a segfault in the destructor ~QNetworkConfiguration. I assume this is because the QNetworkConfiguration has already been deleted by another QNetworkAccessManager. This seems a failure in QT to make sure the configuration is no longer in use before deleting it. I changed mythuiwebbrowser to make a copy of the QNetworkConfiguration in its QNetworkAccessManager, and now the seg fault no longer happens. There are 3 or 4 other places in MythTV where QNetworkAccessManager is used and if my analysis is correct they should also be changed otherwise unpredictable things could happen when the QNetworkAccessManager is deleted.
QT documentation says you only need one QNetworkAccessManager in an application. It does not tell you that if you have more than one it will fail.
comment:25 Changed 8 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
comment:28 Changed 8 years ago by
You can get the fix from the mythbuntu PPA. It should be there tomorrow.
comment:29 Changed 8 years ago by
Replying to pbennett:
QT 5.6.1 seg fault in ~QNetworkConfiguration during exit from program.
According to the QT Documentation QNetworkAccessManager uses by default the QNetworkConfiguration returned by QNetworkConfigurationManager::defaultConfiguration(). It is not clear which QNetworkConfigurationManager object that method is called on as it is not a static method. It seems possible that by default the same configuration object is used by different QNetworkAccessManager objects. When the QNetworkAccessManager in mythuiwebbrowser is deleted, there is a segfault in the destructor ~QNetworkConfiguration. I assume this is because the QNetworkConfiguration has already been deleted by another QNetworkAccessManager. This seems a failure in QT to make sure the configuration is no longer in use before deleting it. I changed mythuiwebbrowser to make a copy of the QNetworkConfiguration in its QNetworkAccessManager, and now the seg fault no longer happens. There are 3 or 4 other places in MythTV where QNetworkAccessManager is used and if my analysis is correct they should also be changed otherwise unpredictable things could happen when the QNetworkAccessManager is deleted.
QT documentation says you only need one QNetworkAccessManager in an application. It does not tell you that if you have more than one it will fail.
Previously when we have had to fix stuff like this, we've wrapped it in our own class which does the ref counting and cleans up correctly when it's done.
Regards Stuart
comment:30 Changed 8 years ago by
The problem with ref counting is that the QNetworkAccessManager deletes the QNetworkConfiguration internally, so we cannot make it call the decrease reference method instead of calling delete.
If this fix is OK, I should go to the other QNetworkAccessManager instances in the system and make them use their own QNetworkConfiguration instances, so that each one has its own configuration object and they can safely be deleted.
comment:31 Changed 8 years ago by
this code is leaking a QNetworkConfiguration (object is allocated but never freed)
comment:32 Changed 8 years ago by
why not allocate the QNetworkConfiguration on the stack instead: like: QNetworkConfiguration newConf(currConf); networkManager->setConfiguration(newConf);
comment:33 Changed 8 years ago by
actually, this would be the equivalent of doing something as simple as: networkManager->setConfiguration(networkManager->configuration());
though, I can't make much sense on this fix however, maybe it only works because of the leak...
comment:34 follow-up: 36 Changed 8 years ago by
Is that leak since my fix? Do you have a tool that detects leaks?
I tried first allocating it on the stack but I get a compile error that you cannot take the address of an object on the stack. It made sense because as soon as you end the method where it is allocated it is no longer valid (will be overwritten in the stack), so the QNetworkConfiguration will be pointing to invalid data.
Maybe something else is going on here that I do not understand, however this fix does cure the seg fault and the leak of one small object is preferable to the seg fault.
comment:35 Changed 8 years ago by
If you know of a better solution or have better insight into the problem please feel free to reverse what I did and change the code. The problem only happened on ubuntu 16.10 (yakkety) and if you have something better but cannot test it, I can test it.
Do you think I should try networkManager->setConfiguration(networkManager->configuration()); ? It seems that this would have no effect, just setting it to the same object it already uses.
comment:36 follow-up: 37 Changed 8 years ago by
Replying to pbennett:
Is that leak since my fix? Do you have a tool that detects leaks?
No, I just read C++ :)
The object is allocated, it is then passed by value. The pointer returned by new is never deleted.
That will leak, guaranteed..
I tried first allocating it on the stack but I get a compile error that you cannot take the address of an object on the stack. It made sense because as soon as you end the method where it is allocated it is no longer valid (will be overwritten in the stack), so the QNetworkConfiguration will be pointing to invalid data.
I just upgraded my laptop to 16.10 last night, will give it a try. .
comment:37 Changed 8 years ago by
Replying to jyavenard:
The object is allocated, it is then passed by value. The pointer returned by new is never deleted.
That will leak, guaranteed..
Well - not really. The original seg fault was caused by the fact that the destructor of QNetworkAccessManager is deleting the QNetworkConfiguration object that it is using. The seg fault is in the destructor of QNetworkConfiguration. My theory is that it was being deleted more than once, by different QNetworkAccessManager objects. That theory may be wrong ...
comment:38 Changed 8 years ago by
you pass the data by value, not via a pointer.
You allocate via new, there's no associated delete of that pointer. It *will* leak.
As the data is passed by value, there's no reason to allocate a new one on the heap.
I'm not referring to why it was crashing before. Just looking at the code as it is now.
If you don't see why it would be leaking, well, I can't explain it any better
comment:39 Changed 8 years ago by
I confirmed from the QT source that QT makes a copy of the QNetworkConfiguration in QNetworkAccessManager. Replacing my original fix with the following also works (i.e. prevents the seg fault):
networkManager->setConfiguration(networkManager->configuration());
This is preferable because it is simpler and does not cause a leak.
I have no explanation of why the seg fault occurs or why this fixes it.
The seg fault occurs in QNetworkConfiguration::~QNetworkConfiguration() per the back trace. Looking at the QT source, I see that is an empty method. I cannot see a reason for it to seg fault. If there was a failure destroying one of its internal fields I would expect to see the seg fault in that destructor.
comment:42 Changed 8 years ago by
Milestone: | unknown → 0.28.1 |
---|
comment:43 Changed 7 years ago by
Owner: | changed from Peter Bennett to Peter Bennett |
---|
The Nov 6, 2016 update solved the stack smashing crash. And Mythfrontend new works, but it seg faults on exit.