Bug 423675

Summary: Akonadi IMAP resource crashes immediately when synchronising IMAP account
Product: [Frameworks and Libraries] Akonadi Reporter: Dennis Schridde <dschridde+kde>
Component: IMAP resourceAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED FIXED    
Severity: crash Keywords: drkonqi
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Fedora RPMs   
OS: Linux   
See Also: https://bugs.kde.org/show_bug.cgi?id=418912
https://bugs.kde.org/show_bug.cgi?id=418593
https://bugs.kde.org/show_bug.cgi?id=396663
https://bugs.kde.org/show_bug.cgi?id=418595
https://bugs.kde.org/show_bug.cgi?id=418599
https://bugs.kde.org/show_bug.cgi?id=415339
https://bugs.kde.org/show_bug.cgi?id=428459
Latest Commit: Version Fixed In:

Description Dennis Schridde 2020-06-29 21:37:57 UTC
Application: akonadi_imap_resource (5.13.2 (19.12.2))

Qt Version: 5.14.2
Frameworks Version: 5.70.0
Operating System: Linux 5.6.19-300.fc32.x86_64 x86_64
Windowing system: X11
Distribution: Fedora 32 (Thirty Two)

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

* In KMail I trigger a sync of one of my IMAP accounts
  - The fetch mail button at the top left, where I can select an account by long-clicking it, has no effect
  - Thus I right-click on the IMAP account in the folder view and click "update folder and sub-folders"
* I immediately receive a crash report of the associated Akonadi IMAP resource

This problem has been reproducible since a long time and since several versions / through several updates of KDE / Akonadi for this specific account.

The crash can be reproduced every time.

-- Backtrace:
Application: Mailbox.org (akonadi_imap_resource), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7ffa145a59c0 (LWP 4541))]

Thread 10 (Thread 0x7ff9e25ed700 (LWP 5168)):
#0  0x00007ffa214d4406 in qt_gettime() () at kernel/qelapsedtimer_unix.cpp:173
#1  0x00007ffa214d2d5d in QTimerInfoList::updateCurrentTime() (this=this@entry=0x7ff9d4004260) at kernel/qtimerinfo_unix.cpp:91
#2  0x00007ffa214d31a9 in QTimerInfoList::timerWait(timespec&) (this=0x7ff9d4004260, tm=...) at kernel/qtimerinfo_unix.cpp:388
#3  0x00007ffa214d48be in timerSourcePrepareHelper (timeout=0x7ff9e25eca04, src=<optimized out>) at kernel/qeventdispatcher_glib.cpp:162
#4  timerSourcePrepare(GSource*, gint*) (source=<optimized out>, timeout=0x7ff9e25eca04) at kernel/qeventdispatcher_glib.cpp:166
#5  0x00007ffa1f726fe2 in g_main_context_prepare () at /lib64/libglib-2.0.so.0
#6  0x00007ffa1f7279fb in g_main_context_iterate.constprop () at /lib64/libglib-2.0.so.0
#7  0x00007ffa1f727c03 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#8  0x00007ffa214d4b8b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7ff9d4000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#9  0x00007ffa2148791b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ff9e25ecbe0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:136
#10 0x00007ffa212f3427 in QThread::exec() (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:118
#11 0x00007ffa212f4690 in QThreadPrivate::start(void*) (arg=0x560f8d472150) at thread/qthread_unix.cpp:342
#12 0x00007ffa205b3432 in start_thread () at /lib64/libpthread.so.0
#13 0x00007ffa20f5a9d3 in clone () at /lib64/libc.so.6

Thread 9 (Thread 0x7ff9e35ef700 (LWP 4697)):
#0  0x00007ffa20f4fb6f in poll () at /lib64/libc.so.6
#1  0x00007ffa1f727ace in g_main_context_iterate.constprop () at /lib64/libglib-2.0.so.0
#2  0x00007ffa1f727c03 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#3  0x00007ffa214d4b8b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7ff9d8000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007ffa2148791b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ff9e35eebe0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:136
#5  0x00007ffa212f3427 in QThread::exec() (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:118
#6  0x00007ffa212f4690 in QThreadPrivate::start(void*) (arg=0x560f8d26b8b0) at thread/qthread_unix.cpp:342
#7  0x00007ffa205b3432 in start_thread () at /lib64/libpthread.so.0
#8  0x00007ffa20f5a9d3 in clone () at /lib64/libc.so.6

Thread 8 (Thread 0x7ff9f8a98700 (LWP 4653)):
#0  0x00007ffa20f4fb6f in poll () at /lib64/libc.so.6
#1  0x00007ffa1f727ace in g_main_context_iterate.constprop () at /lib64/libglib-2.0.so.0
#2  0x00007ffa1f727c03 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#3  0x00007ffa214d4b8b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7ff9dc000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007ffa2148791b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ff9f8a97be0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:136
#5  0x00007ffa212f3427 in QThread::exec() (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:118
#6  0x00007ffa212f4690 in QThreadPrivate::start(void*) (arg=0x560f8d265e40) at thread/qthread_unix.cpp:342
#7  0x00007ffa205b3432 in start_thread () at /lib64/libpthread.so.0
#8  0x00007ffa20f5a9d3 in clone () at /lib64/libc.so.6

Thread 7 (Thread 0x7ff9f9299700 (LWP 4652)):
#0  0x00007ffa20f4fb6f in poll () at /lib64/libc.so.6
#1  0x00007ffa1f727ace in g_main_context_iterate.constprop () at /lib64/libglib-2.0.so.0
#2  0x00007ffa1f727c03 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#3  0x00007ffa214d4b8b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7ff9e8000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007ffa2148791b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ff9f9298b90, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:136
#5  0x00007ffa212f3427 in QThread::exec() (this=<optimized out>) at ../../include/QtCore/../../src/corelib/global/qflags.h:118
#6  0x00007ffa2254d51b in QDBusConnectionManager::run() (this=0x7ffa225bc060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:179
#7  0x00007ffa212f4690 in QThreadPrivate::start(void*) (arg=0x7ffa225bc060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:342
#8  0x00007ffa205b3432 in start_thread () at /lib64/libpthread.so.0
#9  0x00007ffa20f5a9d3 in clone () at /lib64/libc.so.6

Thread 6 (Thread 0x7ff9f9a9a700 (LWP 4641)):
#0  0x00007ffa205b9e92 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007ffa052332ab in util_queue_thread_func () at /usr/lib64/dri/iris_dri.so
#2  0x00007ffa05232d7b in impl_thrd_routine () at /usr/lib64/dri/iris_dri.so
#3  0x00007ffa205b3432 in start_thread () at /lib64/libpthread.so.0
#4  0x00007ffa20f5a9d3 in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7ff9fa29b700 (LWP 4640)):
#0  0x00007ffa205b9e92 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007ffa052332ab in util_queue_thread_func () at /usr/lib64/dri/iris_dri.so
#2  0x00007ffa05232d7b in impl_thrd_routine () at /usr/lib64/dri/iris_dri.so
#3  0x00007ffa205b3432 in start_thread () at /lib64/libpthread.so.0
#4  0x00007ffa20f5a9d3 in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7ff9faa9c700 (LWP 4639)):
#0  0x00007ffa205b9e92 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007ffa052332ab in util_queue_thread_func () at /usr/lib64/dri/iris_dri.so
#2  0x00007ffa05232d7b in impl_thrd_routine () at /usr/lib64/dri/iris_dri.so
#3  0x00007ffa205b3432 in start_thread () at /lib64/libpthread.so.0
#4  0x00007ffa20f5a9d3 in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7ff9fb29d700 (LWP 4638)):
#0  0x00007ffa205b9e92 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007ffa052332ab in util_queue_thread_func () at /usr/lib64/dri/iris_dri.so
#2  0x00007ffa05232d7b in impl_thrd_routine () at /usr/lib64/dri/iris_dri.so
#3  0x00007ffa205b3432 in start_thread () at /lib64/libpthread.so.0
#4  0x00007ffa20f5a9d3 in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7ffa0734f700 (LWP 4581)):
#0  0x00007ffa20f4fb6f in poll () at /lib64/libc.so.6
#1  0x00007ffa203e638a in _xcb_conn_wait () at /lib64/libxcb.so.1
#2  0x00007ffa203e871a in xcb_wait_for_event () at /lib64/libxcb.so.1
#3  0x00007ffa074afc78 in QXcbEventQueue::run() (this=0x560f8cf067f0) at qxcbeventqueue.cpp:228
#4  0x00007ffa212f4690 in QThreadPrivate::start(void*) (arg=0x560f8cf067f0) at thread/qthread_unix.cpp:342
#5  0x00007ffa205b3432 in start_thread () at /lib64/libpthread.so.0
#6  0x00007ffa20f5a9d3 in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7ffa145a59c0 (LWP 4541)):
[KCrash Handler]
#4  0x0000000000000000 in  ()
#5  0x00007ffa2149156e in QMetaObject::cast(QObject const*) const (this=this@entry=0x7ffa22e10ea0 <Akonadi::RecursiveMover::staticMetaObject>, obj=0x7ff9e802cbc0) at kernel/qmetaobject.cpp:381
#6  0x00007ffa214915a9 in QMetaObject::cast(QObject*) const (this=this@entry=0x7ffa22e10ea0 <Akonadi::RecursiveMover::staticMetaObject>, obj=<optimized out>) at kernel/qmetaobject.cpp:370
#7  0x00007ffa22dee549 in qobject_cast<Akonadi::RecursiveMover*>(QObject*) (object=<optimized out>) at /usr/include/qt5/QtCore/qobject.h:519
#8  QtPrivate::QVariantValueHelper<Akonadi::RecursiveMover*>::object(QVariant const&) (v=...) at /usr/include/qt5/QtCore/qvariant.h:751
#9  QtPrivate::ObjectInvoker<QtPrivate::QVariantValueHelper<Akonadi::RecursiveMover*>, QVariant const&, Akonadi::RecursiveMover*>::invoke(QVariant const&) (a=...) at /usr/include/qt5/QtCore/qvariant.h:107
#10 qvariant_cast<Akonadi::RecursiveMover*>(QVariant const&) (v=...) at /usr/include/qt5/QtCore/qvariant.h:878
#11 QVariant::value<Akonadi::RecursiveMover*>() const (this=0x560f8d2c20f8) at /usr/include/qt5/QtCore/qvariant.h:367
#12 Akonadi::ResourceScheduler::executeNext() (this=<optimized out>) at /usr/src/debug/kf5-akonadi-server-19.12.2-2.fc32.x86_64/src/agentbase/resourcescheduler.cpp:436
#13 0x00007ffa214b0b5e in QObject::event(QEvent*) (this=0x560f8d2c2080, e=0x7ff9d4028040) at kernel/qobject.cpp:1339
#14 0x00007ffa21faf063 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x560f8d2c2080, e=0x7ff9d4028040) at kernel/qapplication.cpp:3685
#15 0x00007ffa21488fc0 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x560f8d2c2080, event=0x7ff9d4028040) at ../../include/QtCore/../../src/corelib/kernel/qobject.h:153
#16 0x00007ffa2148bc47 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x560f8cef7eb0) at kernel/qcoreapplication.cpp:1815
#17 0x00007ffa214d50a7 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x560f8cfcdbb0) at kernel/qeventdispatcher_glib.cpp:277
#18 0x00007ffa1f7277af in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#19 0x00007ffa1f727b38 in g_main_context_iterate.constprop () at /lib64/libglib-2.0.so.0
#20 0x00007ffa1f727c03 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#21 0x00007ffa214d4b73 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x560f8cfe02f0, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#22 0x00007ffa2148791b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffe636eb110, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:136
#23 0x00007ffa2148f5a6 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:118
#24 0x0000560f8bb4aa17 in Akonadi::ResourceBase::init<ImapResource>(int, char**) (argc=<optimized out>, argv=0x7ffe636eb338) at /usr/include/KF5/AkonadiAgentBase/resourcebase.h:181
#25 0x00007ffa20e80042 in __libc_start_main () at /lib64/libc.so.6
#26 0x0000560f8bb48d3e in _start () at /usr/src/debug/kdepim-runtime-19.12.2-1.fc32.x86_64/resources/imap/main.cpp:22
[Inferior 1 (process 4541) detached]

Possible duplicates by query: bug 423557, bug 423173, bug 423132, bug 422533, bug 422433.

Reported using DrKonqi
Comment 1 Dennis Schridde 2020-12-09 19:24:53 UTC
As of today, 2020-12-09, the issue is no longer reproducible on my Fedora 33 system with:
* kf5-akonadi-server-20.08.3-1.fc33
* kf5-pimcommon-akonadi-20.08.3-1.fc33