https://bugs.kde.org/show_bug.cgi?id=363826

            Bug ID: 363826
           Summary: Crash in KSharedDataCache in KPat
           Product: kpat
           Version: 3.6
          Platform: Compiled Sources
                OS: Linux
            Status: UNCONFIRMED
          Keywords: drkonqi
          Severity: crash
          Priority: NOR
         Component: general
          Assignee: co...@kde.org
          Reporter: matt...@mjdsystems.ca
                CC: kde-games-b...@kde.org

Application: kpat (3.6)
 (Compiled from sources)
Qt Version: 5.6.0
Frameworks Version: 5.22.0
Operating System: Linux 4.6.0-gentoo x86_64
Distribution: "Gentoo Base System release 2.2"

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

I was loading a game of patience, when KPat randomly crashed.  Every so often
it will do this when loading a game (the type of game doesn't seem to matter).

I looked at the result of the comparision in gdb and the memory appared to be
present and I could read the data, so I don't know why it crashed.  It did
crash reading from a register, but I don't know how to recover the value in gdb
after KCrash's signal handler has run.  Any hints regarding that would be
appreciated to help track it down.

May be related to bug #361426, which also crashed around where I did, except it
actually tried locking the lock.

The crash can be reproduced sometimes.

-- Backtrace:
Application: KPatience (kpat), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
pthread_cond_wait () at
../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
185    62:    movl    (%rsp), %edi
[Current thread is 1 (Thread 0x7f2609331880 (LWP 28538))]

Thread 6 (Thread 0x7f25f2df0700 (LWP 28543)):
#0  0x00007f260534342d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f25fdd4ebba in poll (__timeout=-1, __nfds=1, __fds=0x7f25f2defbf0)
at /usr/include/bits/poll2.h:46
#2  _xcb_conn_wait (c=c@entry=0x24da680, cond=cond@entry=0x24da6c0,
vector=vector@entry=0x0, count=count@entry=0x0) at
/usr/src/debug/x11-libs/libxcb-1.11.1/libxcb-1.11.1/src/xcb_conn.c:459
#3  0x00007f25fdd51091 in xcb_wait_for_event (c=0x24da680) at
/usr/src/debug/x11-libs/libxcb-1.11.1/libxcb-1.11.1/src/xcb_in.c:693
#4  0x00007f25f451c289 in QXcbEventReader::run (this=0x24da080) at
qxcbconnection.cpp:1313
#5  0x00007f2605daca4d in QThreadPrivate::start (arg=0x24da080) at
thread/qthread_unix.cpp:340
#6  0x00007f2600b51652 in start_thread (arg=0x7f25f2df0700) at
pthread_create.c:334
#7  0x00007f260534cc8d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 5 (Thread 0x7f25f1672700 (LWP 28545)):
#0  0x00007f260534342d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f26003d62fd in g_main_context_poll (priority=2147483647, n_fds=1,
fds=0x7f25e4003020, timeout=<optimized out>, context=0x7f25e4000990) at
/usr/src/debug/dev-libs/glib-2.46.2-r3/glib-2.46.2/glib/gmain.c:4135
#2  g_main_context_iterate (context=context@entry=0x7f25e4000990,
block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at
/usr/src/debug/dev-libs/glib-2.46.2-r3/glib-2.46.2/glib/gmain.c:3835
#3  0x00007f26003d6433 in g_main_context_iteration (context=0x7f25e4000990,
may_block=may_block@entry=1) at
/usr/src/debug/dev-libs/glib-2.46.2-r3/glib-2.46.2/glib/gmain.c:3901
#4  0x00007f2605ff1dab in QEventDispatcherGlib::processEvents
(this=0x7f25e40008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:419
#5  0x00007f2605f9631b in QEventLoop::exec (this=this@entry=0x7f25f1671cf0,
flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#6  0x00007f2605da7885 in QThread::exec (this=this@entry=0x7f2602712e40
<(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at
thread/qthread.cpp:503
#7  0x00007f2602692bf6 in QDBusConnectionManager::run (this=0x7f2602712e40
<(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at
qdbusconnection.cpp:181
#8  0x00007f2605daca4d in QThreadPrivate::start (arg=0x7f2602712e40 <(anonymous
namespace)::Q_QGS__q_manager::innerFunction()::holder>) at
thread/qthread_unix.cpp:340
#9  0x00007f2600b51652 in start_thread (arg=0x7f25f1672700) at
pthread_create.c:334
#10 0x00007f260534cc8d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 4 (Thread 0x7f25d6e1a700 (LWP 28562)):
#0  pthread_cond_wait () at
../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f25eb99546b in cnd_wait (mtx=0x27627b0, cond=0x27627d8) at
/usr/src/debug/media-libs/mesa-11.2.2/mesa-11.2.2/include/c11/threads_posix.h:159
#2  pipe_semaphore_wait (sema=0x27627b0) at
/usr/src/debug/media-libs/mesa-11.2.2/mesa-11.2.2/src/gallium/auxiliary/os/os_thread.h:259
#3  radeon_drm_cs_emit_ioctl (param=param@entry=0x2762380) at
/usr/src/debug/media-libs/mesa-11.2.2/mesa-11.2.2/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c:688
#4  0x00007f25eb995018 in impl_thrd_routine (p=<optimized out>) at
/usr/src/debug/media-libs/mesa-11.2.2/mesa-11.2.2/include/c11/threads_posix.h:87
#5  0x00007f2600b51652 in start_thread (arg=0x7f25d6e1a700) at
pthread_create.c:334
#6  0x00007f260534cc8d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7f25d3fbc700 (LWP 28564)):
#0  pthread_cond_timedwait () at
../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007f2605dad82b in QWaitConditionPrivate::wait_relative (time=30000,
this=0x2691870) at thread/qwaitcondition_unix.cpp:126
#2  QWaitConditionPrivate::wait (time=30000, this=0x2691870) at
thread/qwaitcondition_unix.cpp:134
#3  QWaitCondition::wait (this=this@entry=0x26c3650,
mutex=mutex@entry=0x25f8970, time=30000) at thread/qwaitcondition_unix.cpp:208
#4  0x00007f2605da8e80 in QThreadPoolThread::run (this=0x26c3640) at
thread/qthreadpool.cpp:127
#5  0x00007f2605daca4d in QThreadPrivate::start (arg=0x26c3640) at
thread/qthread_unix.cpp:340
#6  0x00007f2600b51652 in start_thread (arg=0x7f25d3fbc700) at
pthread_create.c:334
#7  0x00007f260534cc8d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7f25d0ac8700 (LWP 28750)):
[KCrash Handler]
#6  0x00007f26071bbc96 in KSharedDataCache::Private::lock (this=0x277ed60) at
/usr/src/debug/kde-frameworks/kcoreaddons-5.22.0/kcoreaddons-5.22.0/src/lib/caching/kshareddatacache.cpp:1215
#7  KSharedDataCache::Private::CacheLocker::cautiousLock (this=<optimized out>)
at
/usr/src/debug/kde-frameworks/kcoreaddons-5.22.0/kcoreaddons-5.22.0/src/lib/caching/kshareddatacache.cpp:1239
#8  KSharedDataCache::Private::CacheLocker::CacheLocker (this=0x7f25d0ac7b50,
_d=<optimized out>) at
/usr/src/debug/kde-frameworks/kcoreaddons-5.22.0/kcoreaddons-5.22.0/src/lib/caching/kshareddatacache.cpp:1289
#9  0x00007f26071b2864 in KSharedDataCache::insert (this=this@entry=0x2679560,
key=..., data=...) at
/usr/src/debug/kde-frameworks/kcoreaddons-5.22.0/kcoreaddons-5.22.0/src/lib/caching/kshareddatacache.cpp:1424
#10 0x00007f26089c3a29 in
KSharedPixmapCacheMixin<KSharedDataCache>::insertImage (image=..., key=...,
this=<optimized out>) at /usr/include/KF5/KGuiAddons/kimagecache.h:128
#11 RenderingThread::run (this=0x280b500) at
/usr/src/debug/kde-apps/kpat-16.04.1/kpat-16.04.1/libkcardgame/kabstractcarddeck.cpp:92
#12 0x00007f2605daca4d in QThreadPrivate::start (arg=0x280b500) at
thread/qthread_unix.cpp:340
#13 0x00007f2600b51652 in start_thread (arg=0x7f25d0ac8700) at
pthread_create.c:334
#14 0x00007f260534cc8d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7f2609331880 (LWP 28538)):
#0  pthread_cond_wait () at
../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f25fdd4ee39 in _xcb_conn_wait (c=c@entry=0x24da680,
cond=cond@entry=0x7ffc134c8ac0, vector=vector@entry=0x0, count=count@entry=0x0)
at /usr/src/debug/x11-libs/libxcb-1.11.1/libxcb-1.11.1/src/xcb_conn.c:427
#2  0x00007f25fdd5091d in wait_for_reply (c=c@entry=0x24da680, request=761,
e=e@entry=0x0) at
/usr/src/debug/x11-libs/libxcb-1.11.1/libxcb-1.11.1/src/xcb_in.c:516
#3  0x00007f25fdd50ae1 in xcb_wait_for_reply (c=0x24da680, request=761,
e=e@entry=0x0) at
/usr/src/debug/x11-libs/libxcb-1.11.1/libxcb-1.11.1/src/xcb_in.c:546
#4  0x00007f25fdd587aa in xcb_get_input_focus_reply (c=<optimized out>,
cookie=..., e=e@entry=0x0) at xproto.c:4194
#5  0x00007f25f451e282 in QXcbConnection::sync (this=0x24d81c0) at
qxcbconnection.cpp:2038
#6  0x00007f25f454022d in QXcbShmImage::preparePaint (region=...,
this=0x256f7f0) at qxcbbackingstore.cpp:296
#7  QXcbBackingStore::beginPaint (this=this@entry=0x272d930, region=...) at
qxcbbackingstore.cpp:330
#8  0x00007f260649e75b in QBackingStore::beginPaint (this=this@entry=0x272b530,
region=...) at painting/qbackingstore.cpp:167
#9  0x00007f260692aa8c in QWidgetBackingStore::beginPaint
(toCleanIsInTopLevelCoordinates=true, returnInfo=<synthetic pointer>,
backingStore=0x272b530, widget=<optimized out>, toClean=..., this=0x268a6e0) at
kernel/qwidgetbackingstore.cpp:309
#10 QWidgetBackingStore::doSync (this=this@entry=0x268a6e0) at
kernel/qwidgetbackingstore.cpp:1314
#11 0x00007f260692b0d6 in QWidgetBackingStore::sync (this=0x268a6e0) at
kernel/qwidgetbackingstore.cpp:1145
#12 0x00007f2606951293 in QWidgetPrivate::syncBackingStore (this=0x25b8270) at
kernel/qwidget.cpp:1936
#13 0x00007f260696b930 in QWidget::event (this=this@entry=0x25ba520,
event=event@entry=0x28caef0) at kernel/qwidget.cpp:9048
#14 0x00007f2606aa9feb in QMainWindow::event (this=this@entry=0x25ba520,
event=event@entry=0x28caef0) at widgets/qmainwindow.cpp:1543
#15 0x00007f260851067e in KMainWindow::event (this=this@entry=0x25ba520,
ev=ev@entry=0x28caef0) at
/usr/src/debug/kde-frameworks/kxmlgui-5.22.0/kxmlgui-5.22.0/src/kmainwindow.cpp:867
#16 0x00007f26085620c9 in KXmlGuiWindow::event (this=0x25ba520, ev=0x28caef0)
at
/usr/src/debug/kde-frameworks/kxmlgui-5.22.0/kxmlgui-5.22.0/src/kxmlguiwindow.cpp:118
#17 0x00007f260691887c in QApplicationPrivate::notify_helper (this=<optimized
out>, receiver=0x25ba520, e=0x28caef0) at kernel/qapplication.cpp:3714
#18 0x00007f2606920811 in QApplication::notify (this=0x7ffc134c9d80,
receiver=0x25ba520, e=0x28caef0) at kernel/qapplication.cpp:3495
#19 0x00007f2605f98750 in QCoreApplication::notifyInternal2
(receiver=0x25ba520, event=event@entry=0x28caef0) at
kernel/qcoreapplication.cpp:1015
#20 0x00007f2605f9a800 in QCoreApplication::sendEvent (event=0x28caef0,
receiver=<optimized out>) at kernel/qcoreapplication.h:227
#21 QCoreApplicationPrivate::sendPostedEvents (receiver=0x25ba520,
event_type=77, event_type@entry=0, data=0x24cdab0) at
kernel/qcoreapplication.cpp:1650
#22 0x00007f2605f9ad4d in QCoreApplication::sendPostedEvents
(receiver=<optimized out>, event_type=0, event_type@entry=77) at
kernel/qcoreapplication.cpp:1508
#23 0x00007f2606cbb63a in QGraphicsViewPrivate::dispatchPendingUpdateRequests
(this=<optimized out>) at ../../src/widgets/graphicsview/qgraphicsview_p.h:196
#24 QGraphicsScenePrivate::_q_processDirtyItems (this=0x2787350) at
graphicsview/qgraphicsscene.cpp:501
#25 0x00007f2606cc1dd1 in QGraphicsScene::qt_static_metacall (_o=<optimized
out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at
.moc/moc_qgraphicsscene.cpp:182
#26 0x00007f2605fc8d27 in QObject::event (this=this@entry=0x278b500,
e=e@entry=0x267e480) at kernel/qobject.cpp:1256
#27 0x00007f2606cd075b in QGraphicsScene::event (this=0x278b500,
event=0x267e480) at graphicsview/qgraphicsscene.cpp:3501
#28 0x00007f260691887c in QApplicationPrivate::notify_helper (this=<optimized
out>, receiver=0x278b500, e=0x267e480) at kernel/qapplication.cpp:3714
#29 0x00007f2606920811 in QApplication::notify (this=0x7ffc134c9d80,
receiver=0x278b500, e=0x267e480) at kernel/qapplication.cpp:3495
#30 0x00007f2605f98750 in QCoreApplication::notifyInternal2
(receiver=0x278b500, event=event@entry=0x267e480) at
kernel/qcoreapplication.cpp:1015
#31 0x00007f2605f9a800 in QCoreApplication::sendEvent (event=0x267e480,
receiver=<optimized out>) at kernel/qcoreapplication.h:227
#32 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0,
event_type=event_type@entry=0, data=0x24cdab0) at
kernel/qcoreapplication.cpp:1650
#33 0x00007f2605f9ad4d in QCoreApplication::sendPostedEvents
(receiver=receiver@entry=0x0, event_type=event_type@entry=0) at
kernel/qcoreapplication.cpp:1508
#34 0x00007f2605ff18fb in postEventSourceDispatch (s=0x25294b0) at
kernel/qeventdispatcher_glib.cpp:270
#35 0x00007f26003d60d1 in g_main_dispatch (context=0x7f25ec0016f0) at
/usr/src/debug/dev-libs/glib-2.46.2-r3/glib-2.46.2/glib/gmain.c:3154
#36 g_main_context_dispatch (context=context@entry=0x7f25ec0016f0) at
/usr/src/debug/dev-libs/glib-2.46.2-r3/glib-2.46.2/glib/gmain.c:3769
#37 0x00007f26003d6365 in g_main_context_iterate
(context=context@entry=0x7f25ec0016f0, block=block@entry=1,
dispatch=dispatch@entry=1, self=<optimized out>) at
/usr/src/debug/dev-libs/glib-2.46.2-r3/glib-2.46.2/glib/gmain.c:3840
#38 0x00007f26003d6433 in g_main_context_iteration (context=0x7f25ec0016f0,
may_block=may_block@entry=1) at
/usr/src/debug/dev-libs/glib-2.46.2-r3/glib-2.46.2/glib/gmain.c:3901
#39 0x00007f2605ff1d81 in QEventDispatcherGlib::processEvents (this=0x2531ef0,
flags=...) at kernel/qeventdispatcher_glib.cpp:417
#40 0x00007f2605f9631b in QEventLoop::exec (this=this@entry=0x7ffc134c9be0,
flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#41 0x00007f2605f9f097 in QCoreApplication::exec () at
kernel/qcoreapplication.cpp:1285
#42 0x00007f26062d8659 in QGuiApplication::exec () at
kernel/qguiapplication.cpp:1598
#43 0x00007f26069187ca in QApplication::exec () at kernel/qapplication.cpp:2973
#44 0x000000000042fce4 in main (argc=1, argv=<optimized out>) at
/usr/src/debug/kde-apps/kpat-16.04.1/kpat-16.04.1/main.cpp:339

Reported using DrKonqi

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to