Bug 414700

Summary: akonadi_mailfilter_agent segmentation fault for new
Product: [Frameworks and Libraries] Akonadi Reporter: Marcus Harrison <marcus>
Component: Mail Filter AgentAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED WORKSFORME    
Severity: crash Keywords: drkonqi
Priority: NOR    
Version: 5.12.3   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Marcus Harrison 2019-11-30 18:39:38 UTC
Application: akonadi_mailfilter_agent (5.12.3)

Qt Version: 5.13.2
Frameworks Version: 5.64.0
Operating System: Linux 4.15.0-70-generic x86_64
Distribution: KDE neon User Edition 5.17

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

I had just finished adding a new, custom E-mail filter and had executed it manually on an IMAP folder.

- Custom settings of the application:

This E-mail filter is unlike my other mail filters in two ways:

1. It filters on `From`: `is not in address book`;
2. It only filters incoming E-mails from a specific IMAP account, configured under the Advanced tab
    --> Apply this filter to incoming messages:
    --> from checked accounts only

I will try to further narrow down which of these is causing the crash.

The crash can be reproduced every time.

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

Thread 7 (Thread 0x7f39bd671700 (LWP 26910)):
#0  0x00007f3a12b95bf9 in __GI___poll (fds=0x7f39b0004db0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f3a081e95c9 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f3a081e96dc in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f3a13700b9b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f39b0000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007f3a136a106a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f39bd6709e0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f3a134bc3aa in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:531
#6  0x00007f3a134bdb52 in QThreadPrivate::start(void*) (arg=0x558937b40500) at thread/qthread_unix.cpp:360
#7  0x00007f3a16dde6db in start_thread (arg=0x7f39bd671700) at pthread_create.c:463
#8  0x00007f3a12ba288f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7f39ce902700 (LWP 24740)):
#0  0x00007f3a16de8082 in __pthread_disable_asynccancel () at ../sysdeps/unix/sysv/linux/x86_64/cancellation.S:96
#1  0x00007f3a16de8399 in __libc_read (fd=13, buf=0x7f39ce9017d0, nbytes=16) at ../sysdeps/unix/sysv/linux/read.c:27
#2  0x00007f3a0822e2d0 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f3a081e90b7 in g_main_context_check () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f3a081e9570 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f3a081e96dc in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#6  0x00007f3a13700b9b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f39c4000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#7  0x00007f3a136a106a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f39ce9019e0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#8  0x00007f3a134bc3aa in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:531
#9  0x00007f3a134bdb52 in QThreadPrivate::start(void*) (arg=0x558937a43740) at thread/qthread_unix.cpp:360
#10 0x00007f3a16dde6db in start_thread (arg=0x7f39ce902700) at pthread_create.c:463
#11 0x00007f3a12ba288f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7f39cf103700 (LWP 24640)):
#0  0x00007f3a0822f664 in g_mutex_unlock () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f3a081e8b18 in g_main_context_prepare () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f3a081e94fb in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f3a081e96dc in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f3a13700b9b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f39c0000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007f3a136a106a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f39cf1029e0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#6  0x00007f3a134bc3aa in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:531
#7  0x00007f3a134bdb52 in QThreadPrivate::start(void*) (arg=0x558937a1a470) at thread/qthread_unix.cpp:360
#8  0x00007f3a16dde6db in start_thread (arg=0x7f39cf103700) at pthread_create.c:463
#9  0x00007f3a12ba288f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f39cf904700 (LWP 24633)):
#0  0x00007f3a16de8384 in __libc_read (fd=7, buf=0x7f39cf9037a0, nbytes=16) at ../sysdeps/unix/sysv/linux/read.c:27
#1  0x00007f3a0822e2d0 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f3a081e90b7 in g_main_context_check () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f3a081e9570 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f3a081e96dc in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f3a13700b9b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f39c8000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#6  0x00007f3a136a106a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f39cf9039b0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#7  0x00007f3a134bc3aa in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:531
#8  0x00007f3a13b770e5 in  () at /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#9  0x00007f3a134bdb52 in QThreadPrivate::start(void*) (arg=0x7f3a13deed80) at thread/qthread_unix.cpp:360
#10 0x00007f3a16dde6db in start_thread (arg=0x7f39cf904700) at pthread_create.c:463
#11 0x00007f3a12ba288f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f39d5b90700 (LWP 24627)):
#0  0x00007f3a16de49f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x558937704f28) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  0x00007f3a16de49f3 in __pthread_cond_wait_common (abstime=0x0, mutex=0x558937704ed8, cond=0x558937704f00) at pthread_cond_wait.c:502
#2  0x00007f3a16de49f3 in __pthread_cond_wait (cond=0x558937704f00, mutex=0x558937704ed8) at pthread_cond_wait.c:655
#3  0x00007f39d6d8a2cb in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#4  0x00007f39d6d89ff7 in  () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#5  0x00007f3a16dde6db in start_thread (arg=0x7f39d5b90700) at pthread_create.c:463
#6  0x00007f3a12ba288f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f39de47d700 (LWP 24613)):
#0  0x00007f3a12b95bf9 in __GI___poll (fds=0x7f39de47c8e8, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f3a0a713747 in  () at /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007f3a0a71536a in xcb_wait_for_event () at /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007f39e03c8e10 in QXcbEventQueue::run() (this=0x558937698970) at qxcbeventqueue.cpp:228
#4  0x00007f3a134bdb52 in QThreadPrivate::start(void*) (arg=0x558937698970) at thread/qthread_unix.cpp:360
#5  0x00007f3a16dde6db in start_thread (arg=0x7f39de47d700) at pthread_create.c:463
#6  0x00007f3a12ba288f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f3a17f24bc0 (LWP 24500)):
[KCrash Handler]
#6  0x00007f3a1311b400 in __dynamic_cast () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#7  0x0000558935b91169 in Akonadi::Internal::payload_cast<QSharedPointer<KMime::Message> >(Akonadi::Internal::PayloadBase*) (payloadBase=0x558937bb4d90) at /usr/include/KF5/AkonadiCore/itempayloadinternals_p.h:479
#8  0x0000558935b91169 in Akonadi::Item::hasPayloadImpl<QSharedPointer<KMime::Message> >() const (this=0x55893857d608) at /usr/include/KF5/AkonadiCore/item.h:998
#9  0x0000558935b91169 in Akonadi::Item::hasPayload<QSharedPointer<KMime::Message> >() const (this=this@entry=0x55893857d608) at /usr/include/KF5/AkonadiCore/item.h:955
#10 0x0000558935b8a36f in FilterManager::process(QVector<MailCommon::MailFilter*> const&, Akonadi::Item const&, bool, FilterManager::FilterSet, bool, QString const&) (this=0x558937a3b690, mailFilters=..., item=..., needsFullPayload=needsFullPayload@entry=true, set=set@entry=FilterManager::Explicit, account=account@entry=false, accountId=...) at ./agents/mailfilteragent/filtermanager.cpp:516
#11 0x0000558935b8ab6b in FilterManager::Private::slotItemsFetchedForFilter(QVector<Akonadi::Item> const&) (this=0x558937a19160, items=...) at ./agents/mailfilteragent/filtermanager.cpp:131
#12 0x00007f3a136d39ef in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7fff25a51dc0, r=0x558937a3b690, this=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#13 0x00007f3a136d39ef in QMetaObject::activate(QObject*, int, int, void**) (sender=sender@entry=0x558937accf30, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=<optimized out>, argv@entry=0x7fff25a51dc0) at kernel/qobject.cpp:3789
#14 0x00007f3a136d3f97 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x558937accf30, m=m@entry=0x7f3a163cee40 <Akonadi::ItemFetchJob::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fff25a51dc0) at kernel/qobject.cpp:3660
#15 0x00007f3a160dc302 in Akonadi::ItemFetchJob::itemsReceived(QVector<Akonadi::Item> const&) (this=this@entry=0x558937accf30, _t1=...) at ./obj-x86_64-linux-gnu/src/core/KF5AkonadiCore_autogen/include/moc_itemfetchjob.cpp:171
#16 0x00007f3a160e27c3 in Akonadi::ItemFetchJobPrivate::timeout() (this=0x558937b29620) at ./src/core/jobs/itemfetchjob.cpp:71
#17 0x00007f3a160e27c3 in Akonadi::ItemFetchJob::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at ./obj-x86_64-linux-gnu/src/core/KF5AkonadiCore_autogen/include/moc_itemfetchjob.cpp:101
#18 0x00007f3a136d38d5 in QMetaObject::activate(QObject*, int, int, void**) (sender=sender@entry=0x558937ae1b70, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=<optimized out>, argv@entry=0x7fff25a51f40) at kernel/qobject.cpp:3809
#19 0x00007f3a136d3f97 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x558937ae1b70, m=m@entry=0x7f3a13b58d80 <QTimer::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7fff25a51f40) at kernel/qobject.cpp:3660
#20 0x00007f3a136e0607 in QTimer::timeout(QTimer::QPrivateSignal) (this=this@entry=0x558937ae1b70, _t1=...) at .moc/moc_qtimer.cpp:205
#21 0x00007f3a136e0968 in QTimer::timerEvent(QTimerEvent*) (this=0x558937ae1b70, e=<optimized out>) at kernel/qtimer.cpp:255
#22 0x00007f3a136d43eb in QObject::event(QEvent*) (this=0x558937ae1b70, e=<optimized out>) at kernel/qobject.cpp:1282
#23 0x00007f3a14998eac in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x55893764ee80, receiver=receiver@entry=0x558937ae1b70, e=e@entry=0x7fff25a522b0) at kernel/qapplication.cpp:3703
#24 0x00007f3a149a04b0 in QApplication::notify(QObject*, QEvent*) (this=0x7fff25a525b0, receiver=0x558937ae1b70, e=0x7fff25a522b0) at kernel/qapplication.cpp:3449
#25 0x00007f3a136a2f08 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x558937ae1b70, event=0x7fff25a522b0) at kernel/qcoreapplication.cpp:1095
#26 0x00007f3a13700009 in QTimerInfoList::activateTimers() (this=0x5589376f25d0) at kernel/qtimerinfo_unix.cpp:643
#27 0x00007f3a137007d1 in timerSourceDispatch(GSource*, GSourceFunc, gpointer) (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:183
#28 0x00007f3a081e9417 in g_main_context_dispatch () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#29 0x00007f3a081e9650 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#30 0x00007f3a081e96dc in g_main_context_iteration () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#31 0x00007f3a13700b7f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x558937703d10, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#32 0x00007f3a136a106a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fff25a52500, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#33 0x00007f3a136aa3e0 in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1403
#34 0x00007f3a1415cecc in QGuiApplication::exec() () at kernel/qguiapplication.cpp:1788
#35 0x00007f3a14998e05 in QApplication::exec() () at kernel/qapplication.cpp:2859
#36 0x00007f3a174a068d in Akonadi::AgentBase::init(Akonadi::AgentBase&) (r=...) at ./src/agentbase/agentbase.cpp:967
#37 0x0000558935b9abf1 in Akonadi::AgentBase::init<MailFilterAgent>(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/include/KF5/AkonadiAgentBase/agentbase.h:484
#38 0x00007f3a12aa2b97 in __libc_start_main (main=0x558935b83a80 <main(int, char**)>, argc=3, argv=0x7fff25a52728, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fff25a52718) at ../csu/libc-start.c:310
#39 0x0000558935b83aba in _start ()

Possible duplicates by query: bug 414685, bug 414574, bug 414545, bug 414454, bug 414436.

Reported using DrKonqi
Comment 1 Justin Zobel 2022-09-30 04:37:54 UTC
Thank you for reporting this crash in KDE software. As it has been a while since this issue was reported, can we please ask you to see if you can reproduce the crash with a recent software version?

If you can reproduce the issue, please change the status to "CONFIRMED" when replying. Thank you!
Comment 2 Bug Janitor Service 2022-10-15 04:55:39 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 3 Bug Janitor Service 2022-10-30 05:04:10 UTC
This bug has been in NEEDSINFO status with no change for at least
30 days. The bug is now closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!