Bug 373607 - KMail crash on close
Summary: KMail crash on close
Status: RESOLVED DUPLICATE of bug 371557
Alias: None
Product: kmail2
Classification: Applications
Component: general (show other bugs)
Version: 5.2.3
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2016-12-13 11:27 UTC by honggoff
Modified: 2016-12-20 18:16 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description honggoff 2016-12-13 11:27:48 UTC
Application: kmail (5.2.3)

Qt Version: 5.6.1
Frameworks Version: 5.26.0
Operating System: Linux 4.8.0-30-generic x86_64
Distribution: Ubuntu 16.10

-- Information about the crash:
- What I was doing when the application crashed:

I closed the main window of KMail. After the window closed, the crash reporting assistant appeared, indicating that the program has caused a segmentation fault.

This is not the first time this crash has happened. So far I didn't notice any data loss or other adverse effects. However, it does not happen every time I close the program.

The crash reporter could not find debugging symbol packages for all involved libraries. I would be happy to install them manually if that is useful for future crashes.

The crash can be reproduced sometimes.

-- Backtrace:
Application: KMail (kmail), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f13525f1940 (LWP 26061))]

Thread 7 (Thread 0x7f12cbfff700 (LWP 26095)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f13645c9da3 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5
#2  0x00007f13648ea591 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5
#3  0x00007f13697426ca in start_thread (arg=0x7f12cbfff700) at pthread_create.c:333
#4  0x00007f1372a4e0af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105

Thread 6 (Thread 0x7f12d8a1d700 (LWP 26094)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f13645c8d74 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5
#2  0x00007f13648ea591 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5
#3  0x00007f13697426ca in start_thread (arg=0x7f12d8a1d700) at pthread_create.c:333
#4  0x00007f1372a4e0af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105

Thread 5 (Thread 0x7f1321824700 (LWP 26085)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f132dc224d3 in ?? () from /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
#2  0x00007f132dc21c17 in ?? () from /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
#3  0x00007f13697426ca in start_thread (arg=0x7f1321824700) at pthread_create.c:333
#4  0x00007f1372a4e0af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105

Thread 4 (Thread 0x7f132eb8f700 (LWP 26083)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f13648ba96b in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5
#2  0x00007f13648ba9a9 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5WebKit.so.5
#3  0x00007f13697426ca in start_thread (arg=0x7f132eb8f700) at pthread_create.c:333
#4  0x00007f1372a4e0af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105

Thread 3 (Thread 0x7f134f087700 (LWP 26065)):
#0  0x00007f1373351d99 in std::__atomic_base<QMutexData*>::compare_exchange_strong (__m2=<optimized out>, __m1=std::memory_order_release, __p2=0x0, __p1=@0x7f134f0869f8: 0x1, this=0x55726cd33868) at /usr/include/c++/6/bits/atomic_base.h:752
#1  std::atomic<QMutexData*>::compare_exchange_strong (__m=std::memory_order_release, __p2=0x0, __p1=@0x7f134f0869f8: 0x1, this=0x55726cd33868) at /usr/include/c++/6/atomic:475
#2  QAtomicOps<QMutexData*>::testAndSetRelease<QMutexData*> (currentValue=<synthetic pointer>, newValue=0x0, expectedValue=0x1, _q_value=...) at ../../include/QtCore/../../src/corelib/arch/qatomic_cxx11.h:167
#3  QBasicAtomicPointer<QMutexData>::testAndSetRelease (currentValue=<synthetic pointer>: <optimized out>, newValue=0x0, expectedValue=<optimized out>, this=0x55726cd33868) at ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:278
#4  QBasicMutex::fastTryUnlock (current=<synthetic pointer>: <optimized out>, this=0x55726cd33868) at thread/qmutex.h:85
#5  QMutex::unlock (this=this@entry=0x55726cd33868) at thread/qmutex.cpp:271
#6  0x00007f1373586b51 in QMutexLocker::unlock (this=<synthetic pointer>) at ../../include/QtCore/../../src/corelib/thread/qmutex.h:138
#7  QMutexLocker::~QMutexLocker (this=<synthetic pointer>, __in_chrg=<optimized out>) at ../../include/QtCore/../../src/corelib/thread/qmutex.h:132
#8  QThreadData::canWaitLocked (this=0x55726cd33840) at ../../include/QtCore/5.6.1/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:246
#9  postEventSourcePrepare (s=0x7f13400012d0, timeout=0x7f134f086a84) at kernel/qeventdispatcher_glib.cpp:253
#10 0x00007f136921eed9 in g_main_context_prepare () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#11 0x00007f136921f8fb in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#12 0x00007f136921faec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#13 0x00007f13735874ab in QEventDispatcherGlib::processEvents (this=0x7f13400008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:419
#14 0x00007f137352f0fa in QEventLoop::exec (this=this@entry=0x7f134f086c50, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#15 0x00007f1373354d43 in QThread::exec (this=this@entry=0x7f13754e7d60 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread.cpp:500
#16 0x00007f1375473575 in QDBusConnectionManager::run (this=0x7f13754e7d60 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:171
#17 0x00007f1373359c68 in QThreadPrivate::start (arg=0x7f13754e7d60 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:341
#18 0x00007f13697426ca in start_thread (arg=0x7f134f087700) at pthread_create.c:333
#19 0x00007f1372a4e0af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105

Thread 2 (Thread 0x7f1350164700 (LWP 26063)):
#0  0x00007f1372a420bd in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f1366627c62 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007f13666298d7 in xcb_wait_for_event () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007f1352094299 in QXcbEventReader::run (this=0x55726ccfd620) at qxcbconnection.cpp:1325
#4  0x00007f1373359c68 in QThreadPrivate::start (arg=0x55726ccfd620) at thread/qthread_unix.cpp:341
#5  0x00007f13697426ca in start_thread (arg=0x7f1350164700) at pthread_create.c:333
#6  0x00007f1372a4e0af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105

Thread 1 (Thread 0x7f13525f1940 (LWP 26061)):
[KCrash Handler]
#6  0x00007f136b1455df in QExplicitlySharedDataPointer<QNetworkConfigurationPrivate>::~QExplicitlySharedDataPointer (this=0x55726e7abe30, __in_chrg=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qshareddata.h:159
#7  QNetworkConfiguration::~QNetworkConfiguration (this=0x55726e7abe30, __in_chrg=<optimized out>) at bearer/qnetworkconfiguration.cpp:297
#8  0x00007f13733ba019 in QHashData::free_helper (this=0x55726e7cd920, node_delete=0x7f136b158090 <QHash<QNetworkConfiguration, QWeakPointer<QNetworkSession> >::deleteNode2(QHashData::Node*)>) at tools/qhash.cpp:538
#9  0x00007f136b15806f in QHash<QNetworkConfiguration, QWeakPointer<QNetworkSession> >::freeData (this=0x55726e3a1d70, x=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qhash.h:555
#10 QHash<QNetworkConfiguration, QWeakPointer<QNetworkSession> >::~QHash (this=0x55726e3a1d70, __in_chrg=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qhash.h:246
#11 QSharedNetworkSessionManager::~QSharedNetworkSessionManager (this=0x55726e3a1d70, __in_chrg=<optimized out>) at bearer/qsharednetworksession_p.h:61
#12 qThreadStorage_deleteData<QSharedNetworkSessionManager> (d=0x55726e3a1d70) at ../../include/QtCore/../../src/corelib/thread/qthreadstorage.h:86
#13 QThreadStorage<QSharedNetworkSessionManager*>::deleteData (x=0x55726e3a1d70) at ../../include/QtCore/../../src/corelib/thread/qthreadstorage.h:129
#14 0x00007f1373357ed3 in QThreadStorageData::finish (p=0x55726ccd9d28) at thread/qthreadstorage.cpp:195
#15 0x00007f1373530a2c in QCoreApplicationPrivate::cleanupThreadData (this=this@entry=0x55726ccddd80) at kernel/qcoreapplication.cpp:487
#16 0x00007f137387a84b in QGuiApplicationPrivate::~QGuiApplicationPrivate (this=0x55726ccddd80, __in_chrg=<optimized out>) at kernel/qguiapplication.cpp:1444
#17 0x00007f137434b869 in QApplicationPrivate::~QApplicationPrivate (this=0x55726ccddd80, __in_chrg=<optimized out>) at kernel/qapplication.cpp:192
#18 0x00007f13735662c7 in QScopedPointerDeleter<QObjectData>::cleanup (pointer=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:54
#19 QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::~QScopedPointer (this=0x7ffe0214d558, __in_chrg=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:101
#20 QObject::~QObject (this=<optimized out>, __in_chrg=<optimized out>) at kernel/qobject.cpp:893
#21 0x00007f1373532ec6 in QCoreApplication::~QCoreApplication (this=0x7ffe0214d550, __in_chrg=<optimized out>) at kernel/qcoreapplication.cpp:848
#22 0x00007f137434d331 in QApplication::~QApplication (this=0x7ffe0214d550, __in_chrg=<optimized out>) at kernel/qapplication.cpp:820
#23 0x000055726c3797db in ?? ()
#24 0x00007f13729663f1 in __libc_start_main (main=0x55726c3787e0, argc=3, argv=0x7ffe0214d788, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffe0214d778) at ../csu/libc-start.c:291
#25 0x000055726c379f9a in _start ()

Reported using DrKonqi
Comment 1 honggoff 2016-12-15 13:20:59 UTC
I could reproduce the crash and have a backtrace with more debug symbols installed. Somehow the feature of DrKonqi to add to an existing report is broken, so I'm doing it manually.

-- Backtrace:
Application: KMail (kmail), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f564d8d0940 (LWP 6827))]

Thread 7 (Thread 0x7f55c73ef700 (LWP 6905)):
#0  0x00007f5664a274d0 in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f565f8a8da3 in JSC::GCThread::gcThreadMain() (this=0x55cc152d3ce0) at heap/GCThread.cpp:81
#2  0x00007f565fbc9591 in WTF::wtfThreadEntryPoint(void*) (ptr=0x7f562952b140) at wtf/ThreadingPthreads.cpp:195
#3  0x00007f5664a216ca in start_thread (arg=0x7f55c73ef700) at pthread_create.c:333
#4  0x00007f566dd2d0af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105

Thread 6 (Thread 0x7f55c7bf0700 (LWP 6904)):
#0  0x00007f5664a274d0 in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f565f8a7d74 in JSC::BlockAllocator::blockFreeingThreadMain() (this=0x7f5629582058) at heap/BlockAllocator.cpp:139
#2  0x00007f565fbc9591 in WTF::wtfThreadEntryPoint(void*) (ptr=0x7f562952b1b0) at wtf/ThreadingPthreads.cpp:195
#3  0x00007f5664a216ca in start_thread (arg=0x7f55c7bf0700) at pthread_create.c:333
#4  0x00007f566dd2d0af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105

Thread 5 (Thread 0x7f561cf96700 (LWP 6887)):
#0  0x00007f5664a274d0 in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f5628eb94d3 in  () at /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
#2  0x00007f5628eb8c17 in  () at /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
#3  0x00007f5664a216ca in start_thread (arg=0x7f561cf96700) at pthread_create.c:333
#4  0x00007f566dd2d0af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105

Thread 4 (Thread 0x7f5629e26700 (LWP 6883)):
#0  0x00007f5664a274d0 in pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f565fb9996b in WTF::TCMalloc_PageHeap::scavengerThread() (this=0x7f56604388fc <WTF::pageheap_memory+57564>) at wtf/FastMalloc.cpp:2825
#2  0x00007f565fb999a9 in WTF::TCMalloc_PageHeap::runScavengerThread(void*) (context=0x7f56604388fc <WTF::pageheap_memory+57564>) at wtf/FastMalloc.cpp:1993
#3  0x00007f5664a216ca in start_thread (arg=0x7f5629e26700) at pthread_create.c:333
#4  0x00007f566dd2d0af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105

Thread 3 (Thread 0x7f564a366700 (LWP 6849)):
#0  0x00007f56644fdfa3 in g_main_context_prepare (context=context@entry=0x7f563c000990, priority=priority@entry=0x7f564a365b10) at ././glib/gmain.c:3563
#1  0x00007f56644fe8fb in g_main_context_iterate (context=context@entry=0x7f563c000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ././glib/gmain.c:3907
#2  0x00007f56644feaec in g_main_context_iteration (context=0x7f563c000990, may_block=may_block@entry=1) at ././glib/gmain.c:3988
#3  0x00007f566e8664ab in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f563c0008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:419
#4  0x00007f566e80e0fa in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f564a365c50, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#5  0x00007f566e633d43 in QThread::exec() (this=this@entry=0x7f56707c6d60 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread.cpp:500
#6  0x00007f5670752575 in QDBusConnectionManager::run() (this=0x7f56707c6d60 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:171
#7  0x00007f566e638c68 in QThreadPrivate::start(void*) (arg=0x7f56707c6d60 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:341
#8  0x00007f5664a216ca in start_thread (arg=0x7f564a366700) at pthread_create.c:333
#9  0x00007f566dd2d0af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105

Thread 2 (Thread 0x7f564b443700 (LWP 6848)):
#0  0x00007f566dd210bd in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f5661906c62 in poll (__timeout=-1, __nfds=1, __fds=0x7f564b442b80) at /usr/include/x86_64-linux-gnu/bits/poll2.h:46
#2  0x00007f5661906c62 in _xcb_conn_wait (c=c@entry=0x55cc14bdc5d0, cond=cond@entry=0x55cc14bdc610, vector=vector@entry=0x0, count=count@entry=0x0) at ../../src/xcb_conn.c:459
#3  0x00007f56619088d7 in xcb_wait_for_event (c=0x55cc14bdc5d0) at ../../src/xcb_in.c:693
#4  0x00007f564d373299 in QXcbEventReader::run() (this=0x55cc14bef620) at qxcbconnection.cpp:1325
#5  0x00007f566e638c68 in QThreadPrivate::start(void*) (arg=0x55cc14bef620) at thread/qthread_unix.cpp:341
#6  0x00007f5664a216ca in start_thread (arg=0x7f564b443700) at pthread_create.c:333
#7  0x00007f566dd2d0af in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105

Thread 1 (Thread 0x7f564d8d0940 (LWP 6827)):
[KCrash Handler]
#6  0x00007f56664245df in QExplicitlySharedDataPointer<QNetworkConfigurationPrivate>::~QExplicitlySharedDataPointer() (this=0x55cc16115410, __in_chrg=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qshareddata.h:159
#7  0x00007f56664245df in QNetworkConfiguration::~QNetworkConfiguration() (this=0x55cc16115410, __in_chrg=<optimized out>) at bearer/qnetworkconfiguration.cpp:297
#8  0x00007f566e699019 in QHashData::free_helper(void (*)(QHashData::Node*)) (this=0x55cc1612f490, node_delete=0x7f5666437090 <QHash<QNetworkConfiguration, QWeakPointer<QNetworkSession> >::deleteNode2(QHashData::Node*)>) at tools/qhash.cpp:538
#9  0x00007f566643706f in QHash<QNetworkConfiguration, QWeakPointer<QNetworkSession> >::freeData(QHashData*) (this=0x55cc160dda30, x=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qhash.h:555
#10 0x00007f566643706f in QHash<QNetworkConfiguration, QWeakPointer<QNetworkSession> >::~QHash() (this=0x55cc160dda30, __in_chrg=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qhash.h:246
#11 0x00007f566643706f in QSharedNetworkSessionManager::~QSharedNetworkSessionManager() (this=0x55cc160dda30, __in_chrg=<optimized out>) at bearer/qsharednetworksession_p.h:61
#12 0x00007f566643706f in qThreadStorage_deleteData<QSharedNetworkSessionManager>(void*, QSharedNetworkSessionManager**) (d=0x55cc160dda30) at ../../include/QtCore/../../src/corelib/thread/qthreadstorage.h:86
#13 0x00007f566643706f in QThreadStorage<QSharedNetworkSessionManager*>::deleteData(void*) (x=0x55cc160dda30) at ../../include/QtCore/../../src/corelib/thread/qthreadstorage.h:129
#14 0x00007f566e636ed3 in QThreadStorageData::finish(void**) (p=0x55cc14bcbd28) at thread/qthreadstorage.cpp:195
#15 0x00007f566e80fa2c in QCoreApplicationPrivate::cleanupThreadData() (this=this@entry=0x55cc14bcfd80) at kernel/qcoreapplication.cpp:487
#16 0x00007f566eb5984b in QGuiApplicationPrivate::~QGuiApplicationPrivate() (this=0x55cc14bcfd80, __in_chrg=<optimized out>) at kernel/qguiapplication.cpp:1444
#17 0x00007f566f62a869 in QApplicationPrivate::~QApplicationPrivate() (this=0x55cc14bcfd80, __in_chrg=<optimized out>) at kernel/qapplication.cpp:192
#18 0x00007f566e8452c7 in QScopedPointerDeleter<QObjectData>::cleanup(QObjectData*) (pointer=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:54
#19 0x00007f566e8452c7 in QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::~QScopedPointer() (this=0x7ffdfd3cbce8, __in_chrg=<optimized out>) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:101
#20 0x00007f566e8452c7 in QObject::~QObject() (this=<optimized out>, __in_chrg=<optimized out>) at kernel/qobject.cpp:893
#21 0x00007f566e811ec6 in QCoreApplication::~QCoreApplication() (this=0x7ffdfd3cbce0, __in_chrg=<optimized out>) at kernel/qcoreapplication.cpp:848
#22 0x00007f566f62c331 in QApplication::~QApplication() (this=0x7ffdfd3cbce0, __in_chrg=<optimized out>) at kernel/qapplication.cpp:820
#23 0x000055cc132b27db in  ()
#24 0x00007f566dc453f1 in __libc_start_main (main=0x55cc132b17e0, argc=3, argv=0x7ffdfd3cbf18, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffdfd3cbf08) at ../csu/libc-start.c:291
#25 0x000055cc132b2f9a in _start ()
Comment 2 Christoph Feck 2016-12-20 18:16:47 UTC

*** This bug has been marked as a duplicate of bug 371557 ***