Summary: | Amarok crashes on start in Mageia distro [@ MassStorageDeviceHandlerFactory::createHandler] | ||
---|---|---|---|
Product: | [Applications] amarok | Reporter: | Nikita Krupenko <krnekit> |
Component: | general | Assignee: | Amarok Developers <amarok-bugs-dist> |
Status: | RESOLVED DOWNSTREAM | ||
Severity: | crash | CC: | bert, eeeemail, info, inster.css, jarillon, jdbeard, matej, nlminhtl, sebastien.guerin.news, shlomif |
Priority: | NOR | ||
Version: | 2.6.90 (2.7 beta) | ||
Target Milestone: | 2.7 | ||
Platform: | Mageia RPMs | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Attachments: |
Amarok GDB Backtrace after /usr/bin/amarok was removed.
New crash information added by DrKonqi New crash information added by DrKonqi |
Description
Nikita Krupenko
2012-09-09 20:38:42 UTC
I have the same crash. I'm running a fully updated Mageia Cauldron. It crashes on every startup. ]$ rpm -qa |grep amarok lib64amarok-sqlcollection1-2.6.0-1.mga3 amarok-2.6.0-1.mga3 lib64amarok-transcoding1-2.6.0-1.mga3 amarok-debug-2.6.0-1.mga3 amarok-handbook-2.6.0-1.mga3 lib64amarokpud1-2.6.0-1.mga3 lib64amarokcore1-2.6.0-1.mga3 amarok-utils-2.6.0-1.mga3 lib64amaroklib1-2.6.0-1.mga3 lib64amarokocsclient4-2.6.0-1.mga3 Last lines from starting on a console with amarok --debug amarok: BEGIN: void MountPointManager::createHandlerFromDevice(const Solid::Device&, const QString&) amarok: [MountPointManager] Device added and mounted, checking handlers amarok: BEGIN: virtual bool MassStorageDeviceHandlerFactory::canHandle(const Solid::Device&) const amarok: END__: virtual bool MassStorageDeviceHandlerFactory::canHandle(const Solid::Device&) const [Took: 0s] amarok: [MountPointManager] found handler for "/org/freedesktop/UDisks/devices/sdc2" amarok: BEGIN: virtual DeviceHandler* MassStorageDeviceHandlerFactory::createHandler(const Solid::Device&, const QString&, SqlStorage*) const amarok: [MassStorageDeviceHandler] Found existing UUID config for ID "11" , uuid "7e9765ba-b218-4727-8217-30cea29f6904" KCrash: Application 'amarok' crashing... Can somebody not using Mageia confirm this bug? Works fine for me on current git, Kubuntu 12.10 beta1 *** Bug 307669 has been marked as a duplicate of this bug. *** All three people that can reproduce this use Mageia. Distibution / packaging problem most probably. Please report this to Mageia instead. You may want to try to build Amarok 2.6.0 from sources (uninstall all distro packages first) to test whether this is a distribution or packaging problem. *** Bug 308182 has been marked as a duplicate of this bug. *** (In reply to comment #4) > All three people that can reproduce this use Mageia. Distibution / packaging > problem most probably. Please report this to Mageia instead. You may want to > try to build Amarok 2.6.0 from sources (uninstall all distro packages first) > to test whether this is a distribution or packaging problem. I am still getting this problem after building Amarok from sources (latest git master), installing it under /opt/amarok and then doing: d=/opt/amarok KDEDIRS="$d" "$d"/bin/amarok --debug My Amarok build script is: <<< #!/bin/bash test ! -e build && mkdir build cd build rm -f CMakeCache.txt cmake -DCMAKE_INSTALL_PREFIX="/opt/amarok" \ -DCMAKE_BUILD_TYPE=debugfull \ .. >>> I am going to reopen this bug to get more info and proper investigation. Some releated bug entries on bugs.mageia.org with some investigation: * https://bugs.mageia.org/show_bug.cgi?id=7463 * https://bugs.mageia.org/show_bug.cgi?id=7748 Regards, -- Shlomi Fish (In reply to comment #6) > (In reply to comment #4) > > All three people that can reproduce this use Mageia. Distibution / packaging > > problem most probably. Please report this to Mageia instead. You may want to > > try to build Amarok 2.6.0 from sources (uninstall all distro packages first) > > to test whether this is a distribution or packaging problem. > > I am still getting this problem after building Amarok from sources (latest > git master), installing it under /opt/amarok and then doing: And you are sure you get the same backtrace? I can't reproduce this here at all, wether with Amarok 2.6 final or 2.6-git, Kubuntu 12.10, KDE 4.9.2 Please provide a backtrace with the package you built from sources (of course this assumes you removed the Mageia package beforehand to make sure what starts is indeed the built package). Created attachment 74774 [details]
Amarok GDB Backtrace after /usr/bin/amarok was removed.
Here is the gdb backtrace with the system-wide amarok removed. d=/opt/amarok (where I have installed it).
Changing status back to reopened. (In reply to comment #9) > Created attachment 74774 [details] > Amarok GDB Backtrace after /usr/bin/amarok was removed. > > Here is the gdb backtrace with the system-wide amarok removed. d=/opt/amarok > (where I have installed it). Please always paste backtraces inline, else those are not searchable. (gdb) bt #0 0x00007ffff4f8be7d in QThreadData::~QThreadData (this=0x618210, __in_chrg=<optimized out>) at thread/qthread.cpp:102 #1 0x00007ffff4f8bfd8 in QThreadData::deref (this=0x618210) at thread/qthread.cpp:128 #2 0x00007ffff509ee9b in QObjectPrivate::~QObjectPrivate (this=0xff6a70, __in_chrg=<optimized out>) at kernel/qobject.cpp:174 #3 0x00007ffff509f029 in QObjectPrivate::~QObjectPrivate (this=0xff6a70, __in_chrg=<optimized out>) at kernel/qobject.cpp:186 #4 0x00007ffff50a2b9c in cleanup (pointer=<optimized out>) at ../../src/corelib/tools/qscopedpointer.h:62 #5 ~QScopedPointer (this=0xff9250, __in_chrg=<optimized out>) at ../../src/corelib/tools/qscopedpointer.h:100 #6 QObject::~QObject (this=0xff9248, __in_chrg=<optimized out>) at kernel/qobject.cpp:817 #7 0x00007ffff5031d4c in cleanup (pointer=<optimized out>) at ../../src/corelib/tools/qscopedpointer.h:62 #8 ~QScopedPointer (this=<optimized out>, __in_chrg=<optimized out>) at ../../src/corelib/tools/qscopedpointer.h:100 #9 QTextStream::~QTextStream (this=0x1017620, __in_chrg=<optimized out>)at io/qtextstream.cpp:1142 #10 0x00007fffcf1397e2 in QDebug::Stream::~Stream (this=0x1017620, __in_chrg=<optimized out>) at /usr/include/QtCore/qdebug.h:64 #11 0x00007fffcf139879 in QDebug::~QDebug (this=0x7fffffff9da0, __in_chrg=<optimized out>) at /usr/include/QtCore/qdebug.h:88 #12 0x00007fffcf1b884f in MassStorageDeviceHandlerFactory::createHandler (this= 0x100bd10, device=..., udi=..., s=0xa24760) at /home/shlomif/Download/unpack/kde/amarok/amarok/src/core-mpl/collections/db/sql/device/massstorage/MassStorageDeviceHandler.cpp:156 #13 0x00007fffcf1584f1 in MountPointManager::createHandlerFromDevice (this= 0xfdca80, device=..., udi=...) at /home/shlomif/Download/unpack/kde/amarok/amarok/src/core-impl/collections/db/MountPointManager.cpp:376 #14 0x00007fffcf156a55 in MountPointManager::createDeviceFactories (this= 0xfdca80) at /home/shlomif/Download/unpack/kde/amarok/amarok/src/core-impl/collections/db/MountPointManager.cpp:95 #15 0x00007fffcf15659d in MountPointManager::MountPointManager (this=0xfdca80, parent=0xa21350, storage=0xa24760) at /home/shlomif/Download/unpack/kde/amarok/amarok/src/core-impl/collections/db/MountPointManager.cpp:57 #16 0x00007fffcf16c043 in Collections::SqlCollectionFactory::createSqlCollection (this=0x7fffffffa2bf, id=..., prettyName=..., storage=0xa24760) at /home/shlomif/Download/unpack/kde/amarok/amarok/src/core-impl/collections/db/sql/SqlCollectionFactory.cpp:34 #17 0x00007fffcf403c84 in Collections::MySqlEmbeddedCollectionFactory::init ( this=0xf273d0) at /home/shlomif/Download/unpack/kde/amarok/amarok/src/core-impl/collections/db/sql/mysqlecollection/MySqlEmbeddedCollection.cpp:35 #18 0x00007ffff6d320b9 in CollectionManager::loadPlugins (this=0x790750, factories=...) at /home/shlomif/Download/unpack/kde/amarok/amarok/src/core-impl/collections/support/CollectionManager.cpp:200 #19 0x00007ffff6d31c7d in CollectionManager::init (this=0x790750, factories= ...) at /home/shlomif/Download/unpack/kde/amarok/amarok/src/core-impl/collections/support/CollectionManager.cpp:168 #20 0x00007ffff6ebfad7 in Plugins::PluginManager::init (this=0xc80560) at /home/shlomif/Download/unpack/kde/amarok/amarok/src/PluginManager.cpp:82 #21 0x00007ffff6ebf758 in Plugins::PluginManager::PluginManager (this= 0xc80560, parent=0x0) at /home/shlomif/Download/unpack/kde/amarok/amarok/src/PluginManager.cpp:64 #22 0x00007ffff6ebf59c in Plugins::PluginManager::instance () at /home/shlomif/Download/unpack/kde/amarok/amarok/src/PluginManager.cpp:43 #23 0x00007ffff6b2497b in The::pluginManager () at /home/shlomif/Download/unpack/kde/amarok/amarok/src/PluginManager.h:74 #24 0x00007ffff6ea4e01 in MainWindow::MainWindow (this=0x78f8c0) at /home/shlomif/Download/unpack/kde/amarok/amarok/src/MainWindow.cpp:140 #25 0x00007ffff6e8ba52 in App::continueInit (this=0x7fffffffad20) at /home/shlomif/Download/unpack/kde/amarok/amarok/src/App.cpp:541 #26 0x00007ffff6e88e3e in App::App (this=0x7fffffffad20) at /home/shlomif/Download/unpack/kde/amarok/amarok/src/App.cpp:179 #27 0x000000000040cd3b in main (argc=3, argv=0x7fffffffd308) at /home/shlomif/Download/unpack/kde/amarok/amarok/src/main.cpp:328 (gdb) (In reply to comment #9) > Created attachment 74774 [details] > Amarok GDB Backtrace after /usr/bin/amarok was removed. > > Here is the gdb backtrace with the system-wide amarok removed. d=/opt/amarok > (where I have installed it). Hi Shloni, removing /usr/bin/amarok and setting just KDEDIRS is not enough. Please remove the whole Amarok distribution package, e.g. so that there are no /usr/lib64/libamarok* /usr/lib64/kde4/amarok_* and set also LD_LIBRARY_PATH as appropriata. Please refer to http://blogs.fsfe.org/myriam/2009/09/26/compiling-amarok-from-git-locally-full-summary/ for complete instructions. Also, the backtrace emits a lot of warnings like warning: the debug information found in "/usr/lib/debug/usr/lib64/libsoprano.so.4.3.0.debug" does not match "/lib64/libsoprano.so.4" (CRC mismatch). -- which looks like an indication that Mageia's package manager screwed up keeping binaries and debugging information in sync. *** Bug 308080 has been marked as a duplicate of this bug. *** (In reply to comment #12) > removing /usr/bin/amarok and setting just KDEDIRS is not enough. Please > remove the whole Amarok distribution package (...) When creating backtraces using gdb, please do them as follows: # wait for crash (gdb) set height 0 (gdb) thread apply all bt 20 On the other hand, I'm still pretty convinced this is a bug on the distribution side. No-one with other distro reported the crash and Megeia makes only a small portion of our users. Also please note that the discussion on https://bugs.mageia.org/show_bug.cgi?id=7748 is completely misleading: yes, stopping udisks may "prevent" the crash, but it just prevents Amarok from running a lot of code incl. code in MountPointManager. This is like preventing the crash by not turning on your computer. Futhermore, it is crashing deeply in Qt, namely in QThreadData destructor triggered by QObjectPrivate destructor triggered by QScopedPointer destructor triggered by QTextStream destructor triggered by QDebug::Stream destructor triggered by QDebug destructor, which is called by compiler-generated code. There's little Amarok can affect so deep inside Qt (unless this is a memory corruption bug). I would perhaps suggest compiling and using your own Qt. Hi, (In reply to comment #14) > (In reply to comment #12) > > removing /usr/bin/amarok and setting just KDEDIRS is not enough. Please > > remove the whole Amarok distribution package (...) > > When creating backtraces using gdb, please do them as follows: > # wait for crash > (gdb) set height 0 > (gdb) thread apply all bt 20 > OK, thanks for the tip. > On the other hand, I'm still pretty convinced this is a bug on the > distribution side. No-one with other distro reported the crash and Megeia > makes only a small portion of our users. > > Also please note that the discussion on > https://bugs.mageia.org/show_bug.cgi?id=7748 is completely misleading: yes, > stopping udisks may "prevent" the crash, but it just prevents Amarok from > running a lot of code incl. code in MountPointManager. This is like > preventing the crash by not turning on your computer. I see. > > Futhermore, it is crashing deeply in Qt, namely in QThreadData destructor > triggered by QObjectPrivate destructor triggered by QScopedPointer > destructor triggered by QTextStream destructor triggered by QDebug::Stream > destructor triggered by QDebug destructor, which is called by > compiler-generated code. There's little Amarok can affect so deep inside Qt > (unless this is a memory corruption bug). I would perhaps suggest compiling > and using your own Qt. I compiled Qt from source (without any patches) using «./configure --prefix="$HOME/apps/qt-4.8.x" -opensource -confirm-license» and installed it and ran Amarok using: <<<< #!/bin/bash d=/opt/amarok export LD_LIBRARY_PATH="$HOME/apps/qt-4.8.x/lib:$d/lib64" export KDEDIRS="$d" "$d"/bin/amarok >>>> It runs fine at first, after I move away ~/.kde4/share/apps/amarok but crashes: 1. On exit. 2. Immediately after the first time. I verified using ldd that the Qt libraries from ~/apps/qt-4.8.x/lib are loaded. Regards, -- Shlomi Fish No longed needs info. (In reply to comment #15) > I compiled Qt from source (without any patches) using «./configure > --prefix="$HOME/apps/qt-4.8.x" -opensource -confirm-license» and installed > it and ran Amarok using: > > <<<< > #!/bin/bash > d=/opt/amarok > export LD_LIBRARY_PATH="$HOME/apps/qt-4.8.x/lib:$d/lib64" > export KDEDIRS="$d" > "$d"/bin/amarok > >>>> > > It runs fine at first, after I move away ~/.kde4/share/apps/amarok but > crashes: 1. On exit. 2. Immediately after the first time. I verified using > ldd that the Qt libraries from ~/apps/qt-4.8.x/lib are loaded. Hmm, strange. Please paste the backtrace with your own Qt. You'll may have to recompile Qt in debugging mode or with -ggdb in CXXFLAGS: just check that line numbers are there in the Qt part of the backtrace. It may be also beneficial if you compile Qt without optimisations (-O0). (In reply to comment #17) > (In reply to comment #15) > > I compiled Qt from source (without any patches) using «./configure > > --prefix="$HOME/apps/qt-4.8.x" -opensource -confirm-license» and installed > > it and ran Amarok using: > > > > <<<< > > #!/bin/bash > > d=/opt/amarok > > export LD_LIBRARY_PATH="$HOME/apps/qt-4.8.x/lib:$d/lib64" > > export KDEDIRS="$d" > > "$d"/bin/amarok > > >>>> > > > > It runs fine at first, after I move away ~/.kde4/share/apps/amarok but > > crashes: 1. On exit. 2. Immediately after the first time. I verified using > > ldd that the Qt libraries from ~/apps/qt-4.8.x/lib are loaded. > > Hmm, strange. Please paste the backtrace with your own Qt. You'll may have > to recompile Qt in debugging mode or with -ggdb in CXXFLAGS: just check that > line numbers are there in the Qt part of the backtrace. It may be also > beneficial if you compile Qt without optimisations (-O0). Here it is: Program received signal SIGSEGV, Segmentation fault. 0x00007ffff4bffa7a in QScopedPointerDeleter<QObjectData>::cleanup (pointer= 0x618280) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:62 62 delete pointer; (gdb) set height 0 (gdb) thread apply all bt 20 Thread 3 (Thread 0x7fffc289e700 (LWP 16286)): #0 0x00007ffff428331d in poll () at ../sysdeps/unix/syscall-template.S:81 #1 0x00007fffecf05b14 in g_main_context_poll (n_fds=2, fds=0x7fffb4003cb0, timeout=-1, context=0x7fffb40009a0, priority=<optimized out>) at gmain.c:3584 #2 g_main_context_iterate (context=context@entry=0x7fffb40009a0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3285 #3 0x00007fffecf05c34 in g_main_context_iteration (context=0x7fffb40009a0, may_block=1) at gmain.c:3351 #4 0x00007ffff4c7cfae in QEventDispatcherGlib::processEvents (this= 0x7fffb40008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426 #5 0x00007ffff4c3d5dc in QEventLoop::processEvents (this=0x7fffc289dd40, flags=...) at kernel/qeventloop.cpp:149 #6 0x00007ffff4c3d770 in QEventLoop::exec (this=0x7fffc289dd40, flags=...) at kernel/qeventloop.cpp:204 #7 0x00007ffff4b0115b in QThread::exec (this=0xfc8cb0) at thread/qthread.cpp:501 #8 0x00007ffff4c17fa5 in QInotifyFileSystemWatcherEngine::run (this=0xfc8cb0) at io/qfilesystemwatcher_inotify.cpp:248 #9 0x00007ffff4b03bd2 in QThreadPrivate::start (arg=0xfc8cb0) at thread/qthread_unix.cpp:338 #10 0x00007ffff2326d18 in start_thread (arg=0x7fffc289e700) at pthread_create.c:308 #11 0x00007ffff428bfad in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 #12 0x0000000000000000 in ?? () Thread 2 (Thread 0x7fffc309f700 (LWP 16285)): #0 pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:217 #1 0x00007fffcdf1493e in inline_mysql_cond_timedwait (abstime=0x7fffc309ecf0, mutex=0x7fffce9079a0 <LOCK_checkpoint>, that= 0x7fffce9079e0 <COND_checkpoint>, src_file=<optimized out>, src_line=<optimized out>) at /usr/src/debug/mariadb-5.5.28/include/mysql/psi/mysql_thread.h:1012 #2 my_service_thread_sleep (control=control@entry= 0x7fffce8d8a60 <checkpoint_control>, sleep_time=<optimized out>) at /usr/src/debug/mariadb-5.5.28/storage/maria/ma_servicethread.c:118 #3 0x00007fffcdf0f51f in ma_checkpoint_background (arg=0x1e) at /usr/src/debug/mariadb-5.5.28/storage/maria/ma_checkpoint.c:705 #4 0x00007ffff2326d18 in start_thread (arg=0x7fffc309f700) at pthread_create.c:308 #5 0x00007ffff428bfad in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111 #6 0x0000000000000000 in ?? () Thread 1 (Thread 0x7fffdbba3780 (LWP 16249)): #0 0x00007ffff4bffa7a in QScopedPointerDeleter<QObjectData>::cleanup (pointer= 0x618280) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:62 #1 0x00007ffff4c6159b in QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::~QScopedPointer (this=0x618268, __in_chrg=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:100 #2 0x00007ffff4c5912a in QObject::~QObject (this=0x618260, __in_chrg=<optimized out>) at kernel/qobject.cpp:817 #3 0x00007ffff4b00e62 in QThread::~QThread (this=0x618260, __in_chrg=<optimized out>) at thread/qthread.cpp:399 #4 0x00007ffff4b00880 in QAdoptedThread::~QAdoptedThread (this=0x618260, __in_chrg=<optimized out>) at thread/qthread.cpp:150 #5 0x00007ffff4b008b2 in QAdoptedThread::~QAdoptedThread (this=0x618260, __in_chrg=<optimized out>) at thread/qthread.cpp:153 #6 0x00007ffff4b005df in QThreadData::~QThreadData (this=0x6181f0, __in_chrg=<optimized out>) at thread/qthread.cpp:102 #7 0x00007ffff4b0078e in QThreadData::deref (this=0x6181f0) at thread/qthread.cpp:128 #8 0x00007ffff4c5716d in QObjectPrivate::~QObjectPrivate (this=0xfd22e0, __in_chrg=<optimized out>) at kernel/qobject.cpp:174 #9 0x00007ffff4c572ee in QObjectPrivate::~QObjectPrivate (this=0xfd22e0, __in_chrg=<optimized out>) at kernel/qobject.cpp:186 #10 0x00007ffff4bffa86 in QScopedPointerDeleter<QObjectData>::cleanup (pointer= 0xfd22e0) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:62 #11 0x00007ffff4c6159b in QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::~QScopedPointer (this=0xff7cb0, __in_chrg=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:100 #12 0x00007ffff4c5912a in QObject::~QObject (this=0xff7ca8, __in_chrg=<optimized out>) at kernel/qobject.cpp:817 #13 0x00007ffff4bd21a0 in QDeviceClosedNotifier::~QDeviceClosedNotifier (this= 0xff7ca8, __in_chrg=<optimized out>) at io/qtextstream.cpp:318 #14 0x00007ffff4bcadb6 in QTextStreamPrivate::~QTextStreamPrivate (this= 0xff7ca0, __in_chrg=<optimized out>) at io/qtextstream.cpp:447 #15 0x00007ffff4bd216b in QScopedPointerDeleter<QTextStreamPrivate>::cleanup ( pointer=0xff7ca0) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:62 #16 0x00007ffff4bd1ff3 in QScopedPointer<QTextStreamPrivate, QScopedPointerDeleter<QTextStreamPrivate> >::~QScopedPointer (this=0xfd00d8, __in_chrg=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:100 #17 0x00007ffff4bcc554 in QTextStream::~QTextStream (this=0xfd00d0, __in_chrg=<optimized out>) at io/qtextstream.cpp:1142 #18 0x00007fffcf137812 in QDebug::Stream::~Stream (this=0xfd00d0, __in_chrg=<optimized out>) at /usr/include/QtCore/qdebug.h:64 #19 0x00007fffcf1378a9 in QDebug::~QDebug (this=0x7fffffff9de0, __in_chrg=<optimized out>) at /usr/include/QtCore/qdebug.h:88 (More stack frames follow...) (gdb) Created attachment 75522 [details]
New crash information added by DrKonqi
amarok (2.6.0) on KDE Platform 4.9.80 using Qt 4.8.4
- What I was doing when the application crashed:
With Mageia3 alpha3
I tried to open a file cantique.wav
I hear the default sound but not my file.
I tried to restart, again and again: no sound.
- Custom settings of the application:
Standard installation of mageia without anything specific.
-- Backtrace (Reduced):
#5 0x00007fba0d2d48d9 in QObject::~QObject() () from /lib64/libQtCore.so.4
#6 0x00007fba0d1be1a9 in QThread::~QThread() () from /lib64/libQtCore.so.4
#7 0x00007fba0d1be389 in QAdoptedThread::~QAdoptedThread() () from /lib64/libQtCore.so.4
#8 0x00007fba0d1bef50 in QThreadData::~QThreadData() () from /lib64/libQtCore.so.4
[...]
#10 0x00007fba0d2d212b in QObjectPrivate::~QObjectPrivate() () from /lib64/libQtCore.so.4
Still crashing in 2.7 beta, KDE 4.9.90. Application: Amarok (amarok), signal: Segmentation fault Using host libthread_db library "/lib/i686/libthread_db.so.1". [Current thread is 1 (Thread 0xaf0d0980 (LWP 11027))] Thread 3 (Thread 0xa81f8b40 (LWP 11032)): #0 0xffffe424 in __kernel_vsyscall () #1 0xb55dda2b in poll () from /lib/i686/libc.so.6 #2 0xb2d07d76 in poll_func () from /lib/libpulse.so.0 #3 0xb2cf608a in pa_mainloop_poll () from /lib/libpulse.so.0 #4 0xb2cf68c9 in pa_mainloop_iterate () from /lib/libpulse.so.0 #5 0xb2cf69a4 in pa_mainloop_run () from /lib/libpulse.so.0 #6 0xb2d07cfe in thread () from /lib/libpulse.so.0 #7 0xafeb899a in internal_thread_func () from /usr/lib/pulseaudio/libpulsecommon-2.99.so #8 0xb5147bb8 in start_thread () from /lib/i686/libpthread.so.0 #9 0xb55e82ce in clone () from /lib/i686/libc.so.6 Thread 2 (Thread 0x98dcbb40 (LWP 11036)): #0 0xffffe424 in __kernel_vsyscall () #1 0xb514b623 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/i686/libpthread.so.0 #2 0xb55f62c4 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/i686/libc.so.6 #3 0xa266e2b8 in my_service_thread_sleep () from /lib/libmysqld.so.18 #4 0xa266a6a7 in ma_checkpoint_background () from /lib/libmysqld.so.18 #5 0xb5147bb8 in start_thread () from /lib/i686/libpthread.so.0 #6 0xb55e82ce in clone () from /lib/i686/libc.so.6 Thread 1 (Thread 0xaf0d0980 (LWP 11027)): [KCrash Handler] #7 0xb580fd26 in QThreadData::~QThreadData (this=0x989e130, __in_chrg=<optimized out>) at thread/qthread.cpp:102 #8 0xb580fe90 in QThreadData::deref (this=0x989e130) at thread/qthread.cpp:128 #9 0xb593b89e in QObjectPrivate::~QObjectPrivate (this=0x9f3b210, __in_chrg=<optimized out>) at kernel/qobject.cpp:173 #10 0xb593ba62 in QObjectPrivate::~QObjectPrivate (this=0x9f3b210, __in_chrg=<optimized out>) at kernel/qobject.cpp:185 #11 0xb593e10a in cleanup (pointer=<optimized out>) at ../../src/corelib/tools/qscopedpointer.h:62 #12 ~QScopedPointer (this=0x9f3b168, __in_chrg=<optimized out>) at ../../src/corelib/tools/qscopedpointer.h:100 #13 QObject::~QObject (this=0x9f3b164, __in_chrg=<optimized out>) at kernel/qobject.cpp:816 #14 0xb58bc523 in ~QDeviceClosedNotifier (this=0x9f3b164, __in_chrg=<optimized out>) at io/qtextstream.cpp:318 #15 QTextStreamPrivate::~QTextStreamPrivate (this=0x9f3b160, __in_chrg=<optimized out>) at io/qtextstream.cpp:447 #16 0xb58c602d in cleanup (pointer=<optimized out>) at ../../src/corelib/tools/qscopedpointer.h:62 #17 ~QScopedPointer (this=<optimized out>, __in_chrg=<optimized out>) at ../../src/corelib/tools/qscopedpointer.h:100 #18 QTextStream::~QTextStream (this=0x9f2c8c8, __in_chrg=<optimized out>) at io/qtextstream.cpp:1142 #19 0xa35d4f7a in QDebug::Stream::~Stream() () from /lib/libamarok-sqlcollection.so.1 #20 0xa35d4fc8 in QDebug::~QDebug() () from /lib/libamarok-sqlcollection.so.1 #21 0xa35c69de in DatabaseUpdater::upgradeVersion14to15() () from /lib/libamarok-sqlcollection.so.1 #22 0xa35d4b85 in DatabaseUpdater::update() () from /lib/libamarok-sqlcollection.so.1 #23 0xa35ec44a in Collections::SqlCollection::SqlCollection(QString const&, QString const&, SqlStorage*) () from /lib/libamarok-sqlcollection.so.1 #24 0xa35ee64c in Collections::SqlCollectionFactory::createSqlCollection(QString const&, QString const&, SqlStorage*) const () from /lib/libamarok-sqlcollection.so.1 #25 0xa36fd4e8 in Collections::MySqlEmbeddedCollectionFactory::init() () from /usr/lib/kde4/amarok_collection-mysqlecollection.so #26 0xb6d3ee29 in CollectionManager::loadPlugins(QList<Collections::CollectionFactory*> const&) () from /lib/libamaroklib.so.1 #27 0xb6d3f509 in CollectionManager::init(QList<Plugins::PluginFactory*> const&) () from /lib/libamaroklib.so.1 #28 0xb6f1224a in Plugins::PluginManager::init() () from /lib/libamaroklib.so.1 #29 0xb6f12af1 in Plugins::PluginManager::PluginManager(QObject*) () from /lib/libamaroklib.so.1 #30 0xb6f12cd6 in Plugins::PluginManager::instance() () from /lib/libamaroklib.so.1 #31 0xb6efb417 in MainWindow::MainWindow() () from /lib/libamaroklib.so.1 #32 0xb6ed4196 in App::continueInit() () from /lib/libamaroklib.so.1 #33 0xb6ed5a88 in App::App() () from /lib/libamaroklib.so.1 #34 0x080500f8 in main () <quote> #20 0xa35d4fc8 in QDebug::~QDebug() () from /lib/libamarok-sqlcollection.so.1 #21 0xa35c69de in DatabaseUpdater::upgradeVersion14to15() () from /lib/libamarok-sqlcollection.so.1 </quote> I received this crash as well. I removed my ~/.kde/ amarok app and config files and restarted. It opened with these errors on the terminal: Failed enumerating UDisks2 objects: "org.freedesktop.DBus.Error.Disconnected" "Not connected to D-Bus server" virtual QStringList Solid::Backends::UPower::UPowerManager::allDevices() error: "org.freedesktop.DBus.Error.Disconnected" I was able to scan my collection without a problem. Played a song without a problem. Then : - I opened the settings dialogue - Enabled "write statistics to files" - Disabled a couple plugins - Enabled LastFM (I believe that was all I did) - Hit OK ==> CRASH I have the full debug saved if requested, here's thread 1: Thread 1 (Thread 0x7f7a218d0780 (LWP 7269)): [KCrash Handler] #5 0x00007f7a1eb0c8e9 in cleanup (pointer=0x23a3280) at ../../src/corelib/tools/qscopedpointer.h:62 #6 ~QScopedPointer (this=0x23a3268, __in_chrg=<optimized out>) at ../../src/corelib/tools/qscopedpointer.h:100 #7 QObject::~QObject (this=0x23a3260, __in_chrg=<optimized out>) at kernel/qobject.cpp:816 #8 0x00007f7a1e9f61b9 in QThread::~QThread (this=0x23a3260, __in_chrg=<optimized out>) at thread/qthread.cpp:440 #9 0x00007f7a1e9f6399 in QAdoptedThread::~QAdoptedThread (this=0x23a3260, __in_chrg=<optimized out>) at thread/qthread.cpp:153 #10 0x00007f7a1e9f6f60 in QThreadData::~QThreadData (this=0x23a31f0, __in_chrg=<optimized out>) at thread/qthread.cpp:102 #11 0x00007f7a1e9f70b8 in QThreadData::deref (this=0x23a31f0) at thread/qthread.cpp:128 #12 0x00007f7a1eb0a13b in QObjectPrivate::~QObjectPrivate (this=0x4a085f0, __in_chrg=<optimized out>) at kernel/qobject.cpp:173 #13 0x00007f7a1e9e2f65 in ~QAbstractAnimationPrivate (this=0x4a085f0, __in_chrg=<optimized out>) at ../../src/corelib/animation/qabstractanimation_p.h:91 #14 ~QVariantAnimationPrivate (this=0x4a085f0, __in_chrg=<optimized out>) at ../../src/corelib/animation/qvariantanimation_p.h:67 #15 ~QPropertyAnimationPrivate (this=0x4a085f0, __in_chrg=<optimized out>) at animation/qpropertyanimation_p.h:64 #16 QPropertyAnimationPrivate::~QPropertyAnimationPrivate (this=0x4a085f0, __in_chrg=<optimized out>) at animation/qpropertyanimation_p.h:64 #17 0x00007f7a1eb0c8ec in cleanup (pointer=<optimized out>) at ../../src/corelib/tools/qscopedpointer.h:62 #18 ~QScopedPointer (this=0x4a085d8, __in_chrg=<optimized out>) at ../../src/corelib/tools/qscopedpointer.h:100 #19 QObject::~QObject (this=0x4a085d0, __in_chrg=<optimized out>) at kernel/qobject.cpp:816 #20 0x00007f7a02ccb3f7 in Oxygen::Animation::~Animation() () from /lib64/liboxygenstyle.so.4 #21 0x00007f7a1eb08a72 in QObjectPrivate::deleteChildren (this=this@entry=0x4a08540) at kernel/qobject.cpp:1907 #22 0x00007f7a1eb0c8b6 in QObject::~QObject (this=0x4a07a40, __in_chrg=<optimized out>) at kernel/qobject.cpp:926 #23 0x00007f7a02f34bae in Oxygen::EnableData::~EnableData() () from /usr/lib64/kde4/plugins/styles/oxygen.so #24 0x00007f7a1eb0ad58 in QObject::event (this=0x4a07a40, e=<optimized out>) at kernel/qobject.cpp:1175 #25 0x00007f7a1f4ee4dc in QApplicationPrivate::notify_helper (this=0x251bdf0, receiver=0x4a07a40, e=0x2ded1e0) at kernel/qapplication.cpp:4562 #26 0x00007f7a1f4f295a in QApplication::notify (this=0x7ffff54234c0, receiver=0x4a07a40, e=0x2ded1e0) at kernel/qapplication.cpp:4423 #27 0x00007f7a212f4b16 in KApplication::notify(QObject*, QEvent*) () from /lib64/libkdeui.so.5 #28 0x00007f7a1eaf642e in QCoreApplication::notifyInternal (this=0x7ffff54234c0, receiver=receiver@entry=0x4a07a40, event=event@entry=0x2ded1e0) at kernel/qcoreapplication.cpp:946 #29 0x00007f7a1eaf9ee1 in sendEvent (event=0x2ded1e0, receiver=0x4a07a40) at kernel/qcoreapplication.h:231 #30 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x23a31f0) at kernel/qcoreapplication.cpp:1570 #31 0x00007f7a1eb24653 in sendPostedEvents () at kernel/qcoreapplication.h:236 #32 postEventSourceDispatch (s=s@entry=0x250f190) at kernel/qeventdispatcher_glib.cpp:279 #33 0x00007f7a174d8845 in g_main_dispatch (context=0x251c170) at gmain.c:2715 #34 g_main_context_dispatch (context=context@entry=0x251c170) at gmain.c:3219 #35 0x00007f7a174d8b78 in g_main_context_iterate (context=context@entry=0x251c170, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3290 #36 0x00007f7a174d8c34 in g_main_context_iteration (context=0x251c170, may_block=1) at gmain.c:3351 #37 0x00007f7a1eb247e6 in QEventDispatcherGlib::processEvents (this=0x23a4ad0, flags=...) at kernel/qeventdispatcher_glib.cpp:424 #38 0x00007f7a1f58e51e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #39 0x00007f7a1eaf517f in QEventLoop::processEvents (this=this@entry=0x7ffff54210e0, flags=...) at kernel/qeventloop.cpp:149 #40 0x00007f7a1eaf5408 in QEventLoop::exec (this=0x7ffff54210e0, flags=...) at kernel/qeventloop.cpp:204 #41 0x00007f7a1eafa1f8 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1218 #42 0x0000000000408ecd in main (argc=1, argv=0x7ffff5423628) at /usr/src/debug/amarok-2.6.90/src/main.cpp:329 Megeia should fix their Qt. Really. Please reopen only if you are able to reproduce in a different distribution. The last backtrace contains *no* Amarok functions, just Qt, a bit of kdeui and a bit of liboxygenstyle. Hi Matej, (In reply to comment #22) > Megeia should fix their Qt. Really. > > Please reopen only if you are able to reproduce in a different distribution. > The last backtrace contains *no* Amarok functions, just Qt, a bit of kdeui > and a bit of liboxygenstyle. I am not going to reopen it (for now), but I wish to note that in comment https://bugs.kde.org/show_bug.cgi?id=306520#c18 I compiled Qt from source, without optimisations onto a prefix, and set LD_LIBRARY_PATH/etc. accordingly and Amarok still crashes. So it is possible the problem is not in the Mageia Qt, but rather in the way that Amarok is using it. It could also be a downstream patch on a different distribution, or a gcc/g++ bug or whatever. Please read the entire thread. Regards, -- Shlomi Fish *** Bug 312133 has been marked as a duplicate of this bug. *** This bug is not yet resolved. It appears the problem is one of static vs dynamic linking for /lib64/libmysqld.so, but this has not yet been demonstrated nor corrected. As a work-around to obtain limited functionality, you can rm -rf ~/.kde4/share/apps/amarok/mysqle/amarok or perhaps rm -rf ~/.kde4/share/apps/amarok/mysqle. If that does not work, rm -rf ~/.kde4/share/apps/amarok should do the job, at the cost of any data already collected. In all cases, when you remove some of the files under ~/kde4/share/apps/amarok, you can expect it to take amarok perhaps a few minutes to rebuild what it needs. If all are removed, you will have to reconfigure settings for amarok. You will probably have to go through the work-around exercise each time you start amarok. (In reply to comment #25) > This bug is not yet resolved. Jim, RESOLVED DOWNSTREAM means that the problem is not on the Amarok side. Yes, it is perhaps not yet resolved, but its bug reports belongs to Mageia bug reposting site, not here. > It appears the problem is one of static vs > dynamic linking for /lib64/libmysqld.so, but this has not yet been > demonstrated nor corrected. How do you know? > As a work-around to obtain limited functionality, you can > rm -rf ~/.kde4/share/apps/amarok/mysqle/amarok > or perhaps rm -rf ~/.kde4/share/apps/amarok/mysqle. If that does not work, > rm -rf ~/.kde4/share/apps/amarok should do the job, at the cost of any data > already collected. > > In all cases, when you remove some of the files under > ~/kde4/share/apps/amarok, you can expect it to take amarok perhaps a few > minutes to rebuild what it needs. If all are removed, you will have to > reconfigure settings for amarok. THIS IS NOT ENDORSED OR RECOMMENDED BY AMAROK DEVELOPERS IN ANY WAY. Jim, if you think the problem is linking libmysqld.so, perhaps the work-around is to use external MySQL database? > You will probably have to go through the work-around exercise each time you > start amarok. [pun] Much easier work-around: 1. rm -rf / 2. Install any other Linux distribution [/pun] I'm reopening this bug, because as I demonstrated, and tried out, Amarok that uses a Qt which was compiled from source, with debugging symbols and without any optimisations still crashes there. So trying to pinpoint it to the Mageia's Qt is not constructive - it is caused by some other factor. If you wish to resolve it as DOWNSTREAM, then pinpoint the exact reason. Shlomi: pleas don't this is definitely NOT an Amarok bug as nobody else can reproduce that but people using Mageia, so it must be a downstream problem. Please do not reopen this report, instead check with Mageia, something is wrong in their Qt packages. Hi Myriam, (In reply to comment #28) > Shlomi: pleas don't this is definitely NOT an Amarok bug as nobody else can > reproduce that but people using Mageia, so it must be a downstream problem. > Please do not reopen this report, instead check with Mageia, something is > wrong in their Qt packages. I've already did the LD_LIBRARY_PATH / KDEDIRS / etc. dance with a Qt compiled from source and verified that this is what Amarok is using, so the problem is not with the Mageia Qt or not exclusively with it. Not opening this bug, and I'll try to investigate it. Regards, -- Shlomi Fish Created attachment 76311 [details]
New crash information added by DrKonqi
amarok (2.6.90) on KDE Platform 4.9.97 using Qt 4.8.4
- What I was doing when the application crashed:
Crash is still occurring in 2.6.90 with KDE 4.9.97. Crashes immediately upon program start.
-- Backtrace (Reduced):
#5 0x00007f669ed768e9 in QObject::~QObject() () from /lib64/libQtCore.so.4
#6 0x00007f669ec601b9 in QThread::~QThread() () from /lib64/libQtCore.so.4
#7 0x00007f669ec60399 in QAdoptedThread::~QAdoptedThread() () from /lib64/libQtCore.so.4
#8 0x00007f669ec60f60 in QThreadData::~QThreadData() () from /lib64/libQtCore.so.4
[...]
#10 0x00007f669ed7413b in QObjectPrivate::~QObjectPrivate() () from /lib64/libQtCore.so.4
|