Bug 423766

Summary: systemsettings5 crash
Product: [Applications] systemsettings Reporter: Jorge Girardi <jorgegirardi>
Component: generalAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED DUPLICATE    
Severity: crash CC: alexander.lohnau, ismailsahillioglu, nicolas.fella
Priority: NOR Keywords: drkonqi
Version: 5.18.5   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: attachment-30481-0.html
New crash information added by DrKonqi

Description Jorge Girardi 2020-07-01 19:54:22 UTC
Application: systemsettings5 (5.18.5)

Qt Version: 5.12.7
Frameworks Version: 5.71.0
Operating System: Linux 5.3.18-lp152.14-default x86_64
Windowing system: X11
Distribution: openSUSE Leap 15.2

-- Information about the crash:
- What I was doing when the application crashed:
I  was downloading global theme opensuse dark when systemsettings5 crash

The crash can be reproduced every time.

-- Backtrace:
Application: Preferencias del sistema (systemsettings5), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f01c455d900 (LWP 9593))]

Thread 10 (Thread 0x7f019135e700 (LWP 9612)):
#0  0x00007f01b8f05ab9 in g_mutex_lock () from /usr/lib64/libglib-2.0.so.0
#1  0x00007f01b8eb9b67 in g_main_context_prepare () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f01b8eba6ab in ?? () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f01b8eba88c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#4  0x00007f01c037b19b in QEventDispatcherGlib::processEvents (this=0x55da658f0d80, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#5  0x00007f01c031c32a in QEventLoop::exec (this=this@entry=0x7f019135dc40, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#6  0x00007f01c014210a in QThread::exec (this=<optimized out>) at thread/qthread.cpp:531
#7  0x00007f01be129146 in ?? () from /usr/lib64/libQt5Quick.so.5
#8  0x00007f01c01438b2 in QThreadPrivate::start (arg=0x55da65909400) at thread/qthread_unix.cpp:361
#9  0x00007f01bb6484f9 in start_thread () from /lib64/libpthread.so.0
#10 0x00007f01bf9e3f2f in clone () from /lib64/libc.so.6

Thread 9 (Thread 0x7f0191b5f700 (LWP 9611)):
#0  0x00007f01bf9d5220 in read () from /lib64/libc.so.6
#1  0x00007f01b8f019a0 in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f01b8eba298 in g_main_context_check () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f01b8eba720 in ?? () from /usr/lib64/libglib-2.0.so.0
#4  0x00007f01b8eba88c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#5  0x00007f01c037b19b in QEventDispatcherGlib::processEvents (this=0x55da6574d6b0, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#6  0x00007f01c031c32a in QEventLoop::exec (this=this@entry=0x7f0191b5ecb0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#7  0x00007f01c014210a in QThread::exec (this=<optimized out>) at thread/qthread.cpp:531
#8  0x00007f01c01438b2 in QThreadPrivate::start (arg=0x55da6574d620) at thread/qthread_unix.cpp:361
#9  0x00007f01bb6484f9 in start_thread () from /lib64/libpthread.so.0
#10 0x00007f01bf9e3f2f in clone () from /lib64/libc.so.6

Thread 8 (Thread 0x7f0195c9e700 (LWP 9603)):
#0  0x00007f01bf9de7a9 in syscall () from /lib64/libc.so.6
#1  0x00007f01c0145f94 in QtLinuxFutex::_q_futex (val3=0, addr2=0x0, val2=0, val=<optimized out>, op=0, addr=<optimized out>) at thread/qfutex_p.h:92
#2  QtLinuxFutex::futexWait<QBasicAtomicInteger<unsigned int> > (expectedValue=<optimized out>, futex=...) at thread/qfutex_p.h:107
#3  futexSemaphoreTryAcquire_loop<false> (timeout=-1, nn=8589934593, curValue=<optimized out>, u=...) at thread/qsemaphore.cpp:219
#4  futexSemaphoreTryAcquire<false> (timeout=-1, n=<optimized out>, u=...) at thread/qsemaphore.cpp:262
#5  QSemaphore::acquire (this=0x7f01bcfa1460, n=<optimized out>) at thread/qsemaphore.cpp:326
#6  0x00007f01bcce3044 in ?? () from /usr/lib64/libQt5Network.so.5
#7  0x00007f01c01438b2 in QThreadPrivate::start (arg=0x7f01bcfa1440) at thread/qthread_unix.cpp:361
#8  0x00007f01bb6484f9 in start_thread () from /lib64/libpthread.so.0
#9  0x00007f01bf9e3f2f in clone () from /lib64/libc.so.6

Thread 7 (Thread 0x7f019649f700 (LWP 9602)):
#0  0x00007f01bf9d96db in poll () from /lib64/libc.so.6
#1  0x00007f01b8eba779 in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f01b8eba88c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f01c037b19b in QEventDispatcherGlib::processEvents (this=0x55da64d6f070, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007f01c031c32a in QEventLoop::exec (this=this@entry=0x7f019649ecb0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f01c014210a in QThread::exec (this=<optimized out>) at thread/qthread.cpp:531
#6  0x00007f01c01438b2 in QThreadPrivate::start (arg=0x55da64f3e650) at thread/qthread_unix.cpp:361
#7  0x00007f01bb6484f9 in start_thread () from /lib64/libpthread.so.0
#8  0x00007f01bf9e3f2f in clone () from /lib64/libc.so.6

Thread 6 (Thread 0x7f01979bf700 (LWP 9601)):
#0  0x00007f01bf9daac7 in ioctl () from /lib64/libc.so.6
#1  0x00007f01a5c219fc in ?? () from /usr/lib64/libnvidia-glcore.so.440.82
#2  0x00007f01a5c229e7 in ?? () from /usr/lib64/libnvidia-glcore.so.440.82
#3  0x00007f01a5c23943 in ?? () from /usr/lib64/libnvidia-glcore.so.440.82
#4  0x00007f01a57a179a in ?? () from /usr/lib64/libnvidia-glcore.so.440.82
#5  0x00007f01a5889a25 in ?? () from /usr/lib64/libnvidia-glcore.so.440.82
#6  0x00007f01a57800ce in ?? () from /usr/lib64/libnvidia-glcore.so.440.82
#7  0x00007f01a69681d4 in ?? () from /usr/lib64/libGLX_nvidia.so.0
#8  0x00007f01a693d071 in glXSwapBuffers () from /usr/lib64/libGLX_nvidia.so.0
#9  0x00007f01a6e09312 in ?? () from /usr/lib64/qt5/plugins/xcbglintegrations/libqxcb-glx-integration.so
#10 0x00007f01c0bd08ef in QOpenGLContext::swapBuffers(QSurface*) () from /usr/lib64/libQt5Gui.so.5
#11 0x00007f01be1ac429 in ?? () from /usr/lib64/libQt5Quick.so.5
#12 0x00007f01be1b0188 in ?? () from /usr/lib64/libQt5Quick.so.5
#13 0x00007f01c01438b2 in QThreadPrivate::start (arg=0x55da65344740) at thread/qthread_unix.cpp:361
#14 0x00007f01bb6484f9 in start_thread () from /lib64/libpthread.so.0
#15 0x00007f01bf9e3f2f in clone () from /lib64/libc.so.6

Thread 5 (Thread 0x7f019a517700 (LWP 9600)):
#0  0x00007ffe3707cb76 in clock_gettime ()
#1  0x00007f01bf9f1836 in clock_gettime () from /lib64/libc.so.6
#2  0x00007f01c037aa81 in qt_clock_gettime (ts=0x7f019a516a10, clock=<optimized out>) at kernel/qelapsedtimer_unix.cpp:111
#3  do_gettime (frac=<synthetic pointer>, sec=<synthetic pointer>) at kernel/qelapsedtimer_unix.cpp:166
#4  qt_gettime () at kernel/qelapsedtimer_unix.cpp:175
#5  0x00007f01c03792b9 in QTimerInfoList::updateCurrentTime (this=this@entry=0x55da65030600) at kernel/qtimerinfo_unix.cpp:91
#6  0x00007f01c0379895 in QTimerInfoList::timerWait (this=0x55da65030600, tm=...) at kernel/qtimerinfo_unix.cpp:388
#7  0x00007f01c037aede in timerSourcePrepareHelper (timeout=0x7f019a516ae4, src=<optimized out>) at kernel/qeventdispatcher_glib.cpp:132
#8  timerSourcePrepare (source=<optimized out>, timeout=0x7f019a516ae4) at kernel/qeventdispatcher_glib.cpp:165
#9  0x00007f01b8eb9cd9 in g_main_context_prepare () from /usr/lib64/libglib-2.0.so.0
#10 0x00007f01b8eba6ab in ?? () from /usr/lib64/libglib-2.0.so.0
#11 0x00007f01b8eba88c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#12 0x00007f01c037b19b in QEventDispatcherGlib::processEvents (this=0x55da651d6640, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#13 0x00007f01c031c32a in QEventLoop::exec (this=this@entry=0x7f019a516cb0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#14 0x00007f01c014210a in QThread::exec (this=<optimized out>) at thread/qthread.cpp:531
#15 0x00007f01c01438b2 in QThreadPrivate::start (arg=0x55da651d0c60) at thread/qthread_unix.cpp:361
#16 0x00007f01bb6484f9 in start_thread () from /lib64/libpthread.so.0
#17 0x00007f01bf9e3f2f in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7f01a225f700 (LWP 9597)):
#0  QMutex::lock (this=this@entry=0x55da64418ce0) at thread/qmutex.cpp:222
#1  0x00007f01c037b87b in QMutexLocker::QMutexLocker (m=0x55da64418ce0, this=<synthetic pointer>) at ../../include/QtCore/../../src/corelib/thread/qmutex.h:206
#2  QThreadData::canWaitLocked (this=0x55da64418cb0) at ../../include/QtCore/5.12.7/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:269
#3  postEventSourcePrepare (timeout=<synthetic pointer>, s=0x55da644156b0) at kernel/qeventdispatcher_glib.cpp:259
#4  postEventSourceCheck (source=0x55da644156b0) at kernel/qeventdispatcher_glib.cpp:269
#5  0x00007f01b8eba1b9 in g_main_context_check () from /usr/lib64/libglib-2.0.so.0
#6  0x00007f01b8eba720 in ?? () from /usr/lib64/libglib-2.0.so.0
#7  0x00007f01b8eba88c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#8  0x00007f01c037b19b in QEventDispatcherGlib::processEvents (this=0x55da64418650, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#9  0x00007f01c031c32a in QEventLoop::exec (this=this@entry=0x7f01a225ec90, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#10 0x00007f01c014210a in QThread::exec (this=<optimized out>) at thread/qthread.cpp:531
#11 0x00007f01bdc53ba5 in ?? () from /usr/lib64/libQt5Qml.so.5
#12 0x00007f01c01438b2 in QThreadPrivate::start (arg=0x55da6441ed00) at thread/qthread_unix.cpp:361
#13 0x00007f01bb6484f9 in start_thread () from /lib64/libpthread.so.0
#14 0x00007f01bf9e3f2f in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7f01ace77700 (LWP 9595)):
#0  0x00007f01b8eba781 in ?? () from /usr/lib64/libglib-2.0.so.0
#1  0x00007f01b8eba88c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f01c037b19b in QEventDispatcherGlib::processEvents (this=0x55da641f52e0, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#3  0x00007f01c031c32a in QEventLoop::exec (this=this@entry=0x7f01ace76c80, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#4  0x00007f01c014210a in QThread::exec (this=<optimized out>) at thread/qthread.cpp:531
#5  0x00007f01c07eecd5 in ?? () from /usr/lib64/libQt5DBus.so.5
#6  0x00007f01c01438b2 in QThreadPrivate::start (arg=0x7f01c0a66d80) at thread/qthread_unix.cpp:361
#7  0x00007f01bb6484f9 in start_thread () from /lib64/libpthread.so.0
#8  0x00007f01bf9e3f2f in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f01b07ff700 (LWP 9594)):
#0  0x00007f01bf9d96db in poll () from /lib64/libc.so.6
#1  0x00007f01bb205307 in ?? () from /usr/lib64/libxcb.so.1
#2  0x00007f01bb206f3a in xcb_wait_for_event () from /usr/lib64/libxcb.so.1
#3  0x00007f01b3637300 in ?? () from /usr/lib64/libQt5XcbQpa.so.5
#4  0x00007f01c01438b2 in QThreadPrivate::start (arg=0x55da64132960) at thread/qthread_unix.cpp:361
#5  0x00007f01bb6484f9 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f01bf9e3f2f in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f01c455d900 (LWP 9593)):
[KCrash Handler]
#4  0x00007f01c1fd88f4 in KJob::error (this=this@entry=0x55da65015e00) at /usr/src/debug/kcoreaddons-5.71.0-lp152.1.1.x86_64/src/lib/jobs/kjob.cpp:197
#5  0x00007f019fdfeac3 in KNSCore::KPackageJob::<lambda(KJob*)>::operator() (job=0x55da65015e00, __closure=0x55da64fc3120) at /usr/src/debug/knewstuff-5.71.0-lp152.1.1.x86_64/src/core/jobs/kpackagejob.cpp:142
#6  QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<KJob*>, void, KNSCore::KPackageJob::start()::<lambda(KJob*)> >::call (arg=<optimized out>, f=...) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:146
#7  QtPrivate::Functor<KNSCore::KPackageJob::start()::<lambda(KJob*)>, 1>::call<QtPrivate::List<KJob*>, void> (arg=<optimized out>, f=...) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:256
#8  QtPrivate::QFunctorSlotObject<KNSCore::KPackageJob::start()::<lambda(KJob*)>, 1, QtPrivate::List<KJob*>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=1, this_=0x55da64fc3110, r=<optimized out>, a=<optimized out>, ret=<optimized out>) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:439
#9  0x00007f01c034e7a2 in QObject::event (this=0x55da64cb0070, e=<optimized out>) at kernel/qobject.cpp:1261
#10 0x00007f01c13e4a0c in QApplicationPrivate::notify_helper (this=this@entry=0x55da6410f020, receiver=receiver@entry=0x55da64cb0070, e=e@entry=0x55da65036890) at kernel/qapplication.cpp:3701
#11 0x00007f01c13ec020 in QApplication::notify (this=0x7ffe3706a500, receiver=0x55da64cb0070, e=0x55da65036890) at kernel/qapplication.cpp:3447
#12 0x00007f01c031e0d8 in QCoreApplication::notifyInternal2 (receiver=0x55da64cb0070, event=0x55da65036890) at kernel/qcoreapplication.cpp:1088
#13 0x00007f01c031e2ae in QCoreApplication::sendEvent (receiver=<optimized out>, event=event@entry=0x55da65036890) at kernel/qcoreapplication.cpp:1476
#14 0x00007f01c0320c97 in QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x55da64104d40) at kernel/qcoreapplication.cpp:1825
#15 0x00007f01c0321238 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1679
#16 0x00007f01c037bb63 in postEventSourceDispatch (s=0x55da641f1a50) at kernel/qeventdispatcher_glib.cpp:276
#17 0x00007f01b8eba464 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#18 0x00007f01b8eba800 in ?? () from /usr/lib64/libglib-2.0.so.0
#19 0x00007f01b8eba88c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#20 0x00007f01c037b17f in QEventDispatcherGlib::processEvents (this=0x55da641156a0, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#21 0x00007f01c031c32a in QEventLoop::exec (this=this@entry=0x7ffe3706a420, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#22 0x00007f01c0325530 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1389
#23 0x000055da63037e00 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/systemsettings5-5.18.5-lp152.1.2.x86_64/app/main.cpp:70
[Inferior 1 (process 9593) detached]

The reporter indicates this bug may be a duplicate of or related to bug 423719.

Possible duplicates by query: bug 423719, bug 278769, bug 272154.

Reported using DrKonqi
Comment 1 Nicolas Fella 2020-07-01 22:48:33 UTC
I cannot reproduce it, but looking at the code there's some QEventLoop usage in the relevant code, that's usually a red flag
Comment 2 Christoph Feck 2020-07-22 20:07:19 UTC
Every thread has an event loop, that's not a problem. Using a nested QEventLoop would be problematic, but that is not visible from the backtrace.
Comment 3 Nicolas Fella 2020-07-22 21:16:28 UTC
There is a nested event loop in the code
Comment 4 Jorge Girardi 2020-07-23 14:59:49 UTC
Created attachment 130337 [details]
attachment-30481-0.html

I fixed the problem by removing kde /home/xxxx/.conf configuration file and rebooting to generate a clean one. It works well.
    El miércoles, 22 de julio de 2020 05:07:22 p. m. GMT-3, Christoph Feck <bugzilla_noreply@kde.org> escribió:  
 
 https://bugs.kde.org/show_bug.cgi?id=423766

--- Comment #2 from Christoph Feck <cfeck@kde.org> ---
Every thread has an event loop, that's not a problem. Using a nested QEventLoop
would be problematic, but that is not visible from the backtrace.
Comment 5 İsmail 2020-08-21 05:53:28 UTC
Created attachment 131067 [details]
New crash information added by DrKonqi

systemsettings5 (5.19.4) using Qt 5.15.0

- What I was doing when the application crashed:

I was scrolling on new global themes and then system settings crashed as soon as I clicked on one of the themes to preview not on install button.

-- Backtrace (Reduced):
#4  0x00007fb41995e974 in KJob::error() const (this=this@entry=0x5582f967e310) at /usr/src/debug/kcoreaddons-5.73.0-1.1.x86_64/src/lib/jobs/kjob.h:655
#5  0x00007fb3d099e552 in operator() (job=0x5582f967e310, __closure=0x5582fddff9f0) at /usr/src/debug/knewstuff-5.73.0-1.1.x86_64/src/core/jobs/kpackagejob.cpp:142
#8  QtPrivate::QFunctorSlotObject<KNSCore::KPackageJob::start()::<lambda(KJob*)>, 1, QtPrivate::List<KJob*>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=<optimized out>, this_=0x5582fddff9e0, r=<optimized out>, a=<optimized out>, ret=<optimized out>) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:443
#9  0x00007fb418833b41 in QObject::event(QEvent*) (this=0x7fb40c0182d0, e=0x5582f926ce90) at kernel/qobject.cpp:1314
#10 0x00007fb4193610cf in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x7fb40c0182d0, e=0x5582f926ce90) at kernel/qapplication.cpp:3671
Comment 6 Alexander Lohnau 2020-08-22 05:45:17 UTC
Possible duplicate of BUG 425245.
Comment 7 Nicolas Fella 2020-08-22 10:10:17 UTC

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