Bug 284162

Summary: akonadi_imap_resource crashed while i was using akregator
Product: [Frameworks and Libraries] Akonadi Reporter: marko.gabriel.cz
Component: IMAP resourceAssignee: Christian Mollekopf <chrigi_1>
Status: RESOLVED FIXED    
Severity: crash CC: faure, kdepim-bugs, mollekopf, vkrause
Priority: NOR    
Version: 4.7   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:

Description marko.gabriel.cz 2011-10-16 08:30:14 UTC
Application: akonadi_imap_resource (4.7)
KDE Platform Version: 4.7.1 (4.7.1)
Qt Version: 4.7.4
Operating System: Linux 3.0.0-12-generic i686
Distribution: Ubuntu 11.10

-- Information about the crash:
- What I was doing when the application crashed:An akonadi_imap_resource used for a Gmail account used in Kmail crashed, while I was using Akregator. Nepomuk desktop search was also runnig.

-- Backtrace:
Application: marko.gabriel.cz of type IMAP E-Mail Server (akonadi_imap_resource), signal: Segmentation fault
[Current thread is 1 (Thread 0xb7815710 (LWP 2134))]

Thread 2 (Thread 0xb59ffb70 (LWP 2615)):
[KCrash Handler]
#7  _int_malloc (av=0x3a7f400, bytes=65536) at malloc.c:4439
#8  0x03978498 in __GI___libc_malloc (bytes=65536) at malloc.c:3660
#9  0x001eee0b in qMalloc (size=65536) at global/qmalloc.cpp:55
#10 0x001f795a in QByteArray::realloc (this=0x9cb4f4c, alloc=65516) at tools/qbytearray.cpp:1428
#11 0x001f7a77 in QByteArray::resize (this=0x9cb4f4c, size=32768) at tools/qbytearray.cpp:1396
#12 0x008cb5e8 in reserve (bytes=40, this=0x9cb4eb4) at ../../include/QtCore/private/../../../src/corelib/tools/qringbuffer_p.h:158
#13 QAbstractSocketPrivate::readFromSocket (this=0x9cb4dd8) at socket/qabstractsocket.cpp:1162
#14 0x008cbd9c in QAbstractSocketPrivate::canReadNotification (this=0x9cb4dd8) at socket/qabstractsocket.cpp:618
#15 0x008b8869 in QAbstractSocketEngine::readNotification (this=0x9dfee58) at socket/qabstractsocketengine.cpp:154
#16 0x008b948b in event (this=0x9dfee38, e=<optimized out>) at socket/qnativesocketengine.cpp:1103
#17 QReadNotifier::event (this=0x9dfee38, e=0xb59ff0d4) at socket/qnativesocketengine.cpp:1100
#18 0x00fbdd54 in notify_helper (e=0xb59ff0d4, receiver=0x9dfee38, this=0x99b3b78) at kernel/qapplication.cpp:4486
#19 QApplicationPrivate::notify_helper (this=0x99b3b78, receiver=0x9dfee38, e=0xb59ff0d4) at kernel/qapplication.cpp:4458
#20 0x00fc3103 in QApplication::notify (this=0xb59ff0d4, receiver=0x9dfee38, e=0xb59ff0d4) at kernel/qapplication.cpp:3886
#21 0x0633c721 in KApplication::notify (this=0xbff89490, receiver=0x9dfee38, event=0xb59ff0d4) at ../../kdeui/kernel/kapplication.cpp:311
#22 0x002f019e in QCoreApplication::notifyInternal (this=0xbff89490, receiver=0x9dfee38, event=0xb59ff0d4) at kernel/qcoreapplication.cpp:787
#23 0x0031e1d8 in sendEvent (event=0xb59ff0d4, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#24 socketNotifierSourceDispatch (source=0x9b354e0) at kernel/qeventdispatcher_glib.cpp:110
#25 0x01c3825f in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#26 0x01c38990 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#27 0x01c38c2a in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#28 0x0031eada in QEventDispatcherGlib::processEvents (this=0x9b354a8, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#29 0x002ef1dd in QEventLoop::processEvents (this=0xb59ff2d0, flags=...) at kernel/qeventloop.cpp:149
#30 0x002ef421 in QEventLoop::exec (this=0xb59ff2d0, flags=...) at kernel/qeventloop.cpp:201
#31 0x001f290b in QThread::exec (this=0x9b35428) at thread/qthread.cpp:498
#32 0x004604d0 in KIMAP::SessionThread::run (this=0x9b35428) at ../../kimap/sessionthread.cpp:169
#33 0x001f57b3 in QThreadPrivate::start (arg=0x9b35428) at thread/qthread_unix.cpp:331
#34 0x0077bd31 in start_thread (arg=0xb59ffb70) at pthread_create.c:304
#35 0x039d80ce in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 1 (Thread 0xb7815710 (LWP 2134)):
#0  0x00594416 in __kernel_vsyscall ()
#1  0x00782619 in __lll_lock_wait () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowlevellock.S:142
#2  0x0077df7d in _L_lock_708 () from /lib/i386-linux-gnu/libpthread.so.0
#3  0x0077ddc3 in __pthread_mutex_lock (mutex=0x9d4615c) at pthread_mutex_lock.c:61
#4  0x039e5f14 in pthread_mutex_lock (mutex=0x9d4615c) at forward.c:182
#5  0x01c39d73 in g_main_context_wakeup () from /lib/i386-linux-gnu/libglib-2.0.so.0
#6  0x0031eedb in QEventDispatcherGlib::wakeUp (this=0x9daf638) at kernel/qeventdispatcher_glib.cpp:578
#7  0x002f4551 in QCoreApplication::postEvent (receiver=0x9cc51b0, event=0x9c6f7a8, priority=0) at kernel/qcoreapplication.cpp:1250
#8  0x002f477b in QCoreApplication::postEvent (receiver=0x9cc51b0, event=0x9c6f7a8) at kernel/qcoreapplication.cpp:1149
#9  0x002f873d in QMetaMethod::invoke (this=0xbff88a5c, object=0x9cc51b0, connectionType=Qt::QueuedConnection, returnValue=..., val0=..., val1=..., val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...) at kernel/qmetaobject.cpp:1637
#10 0x002fab57 in QMetaObject::invokeMethod (obj=0x9cc51b0, member=0x47e52a "quit", type=Qt::AutoConnection, ret=..., val0=..., val1=..., val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...) at kernel/qmetaobject.cpp:1151
#11 0x00460b6e in invokeMethod (val9=<optimized out>, val8=<optimized out>, val7=<optimized out>, val6=<optimized out>, val5=<optimized out>, val4=<optimized out>, val3=<optimized out>, val2=<optimized out>, val1=<optimized out>, val0=<optimized out>, member=<optimized out>, obj=<optimized out>) at /usr/include/qt4/QtCore/qobjectdefs.h:426
#12 KIMAP::SessionThread::~SessionThread (this=0x9cc51b0, __in_chrg=<optimized out>) at ../../kimap/sessionthread.cpp:51
#13 0x00460e92 in KIMAP::SessionThread::~SessionThread (this=0x9cc51b0, __in_chrg=<optimized out>) at ../../kimap/sessionthread.cpp:56
#14 0x0045c4b7 in KIMAP::Session::~Session (this=0x9ccb6c8, __in_chrg=<optimized out>) at ../../kimap/session.cpp:68
#15 0x0045c512 in KIMAP::Session::~Session (this=0x9ccb6c8, __in_chrg=<optimized out>) at ../../kimap/session.cpp:69
#16 0x003035f3 in qDeleteInEventHandler (o=0x9ccb6c8) at kernel/qobject.cpp:3986
#17 0x00308b80 in QObject::event (this=0x9ccb6c8, e=0x9cdaaf0) at kernel/qobject.cpp:1200
#18 0x00fbdd54 in notify_helper (e=0x9cdaaf0, receiver=0x9ccb6c8, this=0x99b3b78) at kernel/qapplication.cpp:4486
#19 QApplicationPrivate::notify_helper (this=0x99b3b78, receiver=0x9ccb6c8, e=0x9cdaaf0) at kernel/qapplication.cpp:4458
#20 0x00fc3103 in QApplication::notify (this=0x9cdaaf0, receiver=0x9ccb6c8, e=0x9cdaaf0) at kernel/qapplication.cpp:3886
#21 0x0633c721 in KApplication::notify (this=0xbff89490, receiver=0x9ccb6c8, event=0x9cdaaf0) at ../../kdeui/kernel/kapplication.cpp:311
#22 0x002f019e in QCoreApplication::notifyInternal (this=0xbff89490, receiver=0x9ccb6c8, event=0x9cdaaf0) at kernel/qcoreapplication.cpp:787
#23 0x002f3f93 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#24 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x9996d60) at kernel/qcoreapplication.cpp:1428
#25 0x002f40ec in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1321
#26 0x0031e6a4 in sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#27 postEventSourceDispatch (s=0x99b6000) at kernel/qeventdispatcher_glib.cpp:277
#28 0x01c3825f in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#29 0x01c38990 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#30 0x01c38c2a in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#31 0x0031eada in QEventDispatcherGlib::processEvents (this=0x9997c68, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#32 0x01075e3a in QGuiEventDispatcherGlib::processEvents (this=0x9997c68, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#33 0x002ef1dd in QEventLoop::processEvents (this=0xbff893f4, flags=...) at kernel/qeventloop.cpp:149
#34 0x002ef421 in QEventLoop::exec (this=0xbff893f4, flags=...) at kernel/qeventloop.cpp:201
#35 0x002f419d in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
#36 0x00fbb8f4 in QApplication::exec () at kernel/qapplication.cpp:3760
#37 0x00ba09d1 in Akonadi::ResourceBase::init (r=0x9b001a0) at ../../akonadi/resourcebase.cpp:393
#38 0x0805e127 in Akonadi::ResourceBase::init<ImapResource> (argc=3, argv=0xbff89564) at /usr/include/akonadi/resourcebase.h:188
#39 0x0805859b in main (argc=3, argv=0xbff89564) at ../../../resources/imap/imapresource.cpp:598

Possible duplicates by query: bug 263758, bug 240559, bug 236519.

Reported using DrKonqi
Comment 1 David Faure 2012-01-05 11:40:29 UTC
QAbstractSocketPrivate... Looks to me like a race condition in Qt's socket handling. I'm getting the same in the heavy-load kdsoap unittest.
Comment 2 Kevin Ottens 2013-11-16 07:26:27 UTC
The IMAP resource has a new maintainer, reassigning to him.
Comment 3 Christian Mollekopf 2013-11-19 16:39:09 UTC
Does this still apply to >=4.11.3?
This one has probably been fixed meanwhile.