Discussion:
[plasmashell] [Bug 389283] New: Plasma hangs and uses 100% of a CPU core [0x00007f339e7bc7c5 in QV4::PersistentValueStorage::allocate (this=0x55711959f670) at jsruntime/qv4persistent.cpp:189...]
Germano Massullo
2018-01-21 15:31:27 UTC
Permalink
https://bugs.kde.org/show_bug.cgi?id=389283

Bug ID: 389283
Summary: Plasma hangs and uses 100% of a CPU core
[0x00007f339e7bc7c5 in
QV4::PersistentValueStorage::allocate
(this=0x55711959f670) at
jsruntime/qv4persistent.cpp:189...]
Product: plasmashell
Version: 5.11.5
Platform: Fedora RPMs
OS: Linux
Status: UNCONFIRMED
Severity: crash
Priority: NOR
Component: general
Assignee: ***@davidedmundson.co.uk
Reporter: ***@gmail.com
CC: plasma-***@kde.org
Target Milestone: 1.0

plasmashell process hangs and uses 100% of a CPU core

$ gdb plasmashell 1326
GNU gdb (GDB) Fedora 8.0.1-33.fc27
Copyright (C) 2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from plasmashell...Reading symbols from
/usr/lib/debug/usr/bin/plasmashell-5.11.5-2.fc27.x86_64.debug...done.
done.
Attaching to program: /usr/bin/plasmashell, process 1326
[New LWP 1404]
[New LWP 1579]
[New LWP 1630]
[New LWP 1706]
[New LWP 1753]
[New LWP 1811]
[New LWP 1921]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
0x00007f339e7bc7c5 in QV4::PersistentValueStorage::allocate
(this=0x55711959f670) at jsruntime/qv4persistent.cpp:189
189 if (p->header.freeList != -1)
(gdb) thread apply all backtrace

Thread 8 (Thread 0x7f32cb85d700 (LWP 1921)):
#0 0x00007f3399a3136b in __GI___poll (fds=0x7f32c4006070, nfds=1,
timeout=3499955) at ../sysdeps/unix/sysv/linux/poll.c:29
#1 0x00007f3391cdaed9 in g_main_context_poll (priority=<optimized out>,
n_fds=1, fds=0x7f32c4006070, timeout=<optimized out>,
context=0x7f32c4000bf0) at gmain.c:4187
#2 g_main_context_iterate (context=***@entry=0x7f32c4000bf0,
block=***@entry=1, dispatch=***@entry=1,
self=<optimized out>) at gmain.c:3881
#3 0x00007f3391cdafec in g_main_context_iteration (context=0x7f32c4000bf0,
may_block=***@entry=1) at gmain.c:3947
#4 0x00007f339a89c33f in QEventDispatcherGlib::processEvents
(this=0x7f32c4000b20, flags=...)
at kernel/qeventdispatcher_glib.cpp:423
#5 0x00007f339a84a0ea in QEventLoop::exec (this=***@entry=0x7f32cb85cc20,
flags=..., ***@entry=...) at kernel/qeventloop.cpp:212
#6 0x00007f339a69b8ba in QThread::exec (this=<optimized out>) at
thread/qthread.cpp:515
#7 0x00007f32ce1cd577 in KCupsConnection::run (this=0x55711c4a05e0)
at
/usr/src/debug/kde-print-manager-17.08.1-1.fc27.x86_64/libkcups/KCupsConnection.cpp:304
#8 0x00007f339a69fb92 in QThreadPrivate::start (arg=0x55711c4a05e0) at
thread/qthread_unix.cpp:368
#9 0x00007f3398d6d61b in start_thread (arg=0x7f32cb85d700) at
pthread_create.c:465
---Type <return> to continue, or q <return> to quit---
#10 0x00007f3399a3d91f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 0x7f32e05db700 (LWP 1811)):
#0 0x00007f3399a3136b in __GI___poll (fds=0x7f32d80050f0, nfds=1, timeout=-1)
at ../sysdeps/unix/sysv/linux/poll.c:29
#1 0x00007f3391cdaed9 in g_main_context_poll (priority=<optimized out>,
n_fds=1, fds=0x7f32d80050f0, timeout=<optimized out>,
context=0x7f32d8000bf0) at gmain.c:4187
#2 g_main_context_iterate (context=***@entry=0x7f32d8000bf0,
block=***@entry=1, dispatch=***@entry=1,
self=<optimized out>) at gmain.c:3881
#3 0x00007f3391cdafec in g_main_context_iteration (context=0x7f32d8000bf0,
may_block=***@entry=1) at gmain.c:3947
#4 0x00007f339a89c33f in QEventDispatcherGlib::processEvents
(this=0x7f32d8000b20, flags=...)
at kernel/qeventdispatcher_glib.cpp:423
#5 0x00007f339a84a0ea in QEventLoop::exec (this=***@entry=0x7f32e05dabf0,
flags=..., ***@entry=...) at kernel/qeventloop.cpp:212
#6 0x00007f339a69b8ba in QThread::exec (this=***@entry=0x557119ee0ba0) at
thread/qthread.cpp:515
#7 0x00007f339f49f1f6 in QQuickPixmapReader::run (this=0x557119ee0ba0) at
util/qquickpixmapcache.cpp:868
#8 0x00007f339a69fb92 in QThreadPrivate::start (arg=0x557119ee0ba0) at
thread/qthread_unix.cpp:368
#9 0x00007f3398d6d61b in start_thread (arg=0x7f32e05db700) at
pthread_create.c:465
---Type <return> to continue, or q <return> to quit---
#10 0x00007f3399a3d91f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7f336ffff700 (LWP 1753)):
#0 0x00007f3398d73c4b in futex_wait_cancelable (private=<optimized out>,
expected=0,
futex_word=0x7f33a1aba478 <QTWTF::pageheap_memory+57592>) at
../sysdeps/unix/sysv/linux/futex-internal.h:88
#1 __pthread_cond_wait_common (abstime=0x0, mutex=0x7f33a1aba428
<QTWTF::pageheap_memory+57512>,
cond=0x7f33a1aba450 <QTWTF::pageheap_memory+57552>) at
pthread_cond_wait.c:502
#2 __pthread_cond_wait (cond=0x7f33a1aba450 <QTWTF::pageheap_memory+57552>,
mutex=0x7f33a1aba428 <QTWTF::pageheap_memory+57512>)
at pthread_cond_wait.c:655
#3 0x00007f33a17c4604 in QTWTF::TCMalloc_PageHeap::scavengerThread
(this=0x7f33a1aac380 <QTWTF::pageheap_memory>)
at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359
#4 0x00007f33a17c4649 in QTWTF::TCMalloc_PageHeap::runScavengerThread
(context=<optimized out>)
at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464
#5 0x00007f3398d6d61b in start_thread (arg=0x7f336ffff700) at
pthread_create.c:465
#6 0x00007f3399a3d91f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

---Type <return> to continue, or q <return> to quit---
Thread 5 (Thread 0x7f337a59f700 (LWP 1706)):
#0 0x00007f3399a3136b in __GI___poll (fds=0x7f3368003ce0, nfds=1, timeout=-1)
at ../sysdeps/unix/sysv/linux/poll.c:29
#1 0x00007f3391cdaed9 in g_main_context_poll (priority=<optimized out>,
n_fds=1, fds=0x7f3368003ce0, timeout=<optimized out>,
context=0x7f3368000bf0) at gmain.c:4187
#2 g_main_context_iterate (context=***@entry=0x7f3368000bf0,
block=***@entry=1, dispatch=***@entry=1,
self=<optimized out>) at gmain.c:3881
#3 0x00007f3391cdafec in g_main_context_iteration (context=0x7f3368000bf0,
may_block=***@entry=1) at gmain.c:3947
#4 0x00007f339a89c33f in QEventDispatcherGlib::processEvents
(this=0x7f3368000b20, flags=...)
at kernel/qeventdispatcher_glib.cpp:423
#5 0x00007f339a84a0ea in QEventLoop::exec (this=***@entry=0x7f337a59ec40,
flags=..., ***@entry=...) at kernel/qeventloop.cpp:212
#6 0x00007f339a69b8ba in QThread::exec (this=***@entry=0x5571195b24c0) at
thread/qthread.cpp:515
#7 0x00007f339e9022a5 in QQmlThreadPrivate::run (this=0x5571195b24c0) at
qml/ftw/qqmlthread.cpp:147
#8 0x00007f339a69fb92 in QThreadPrivate::start (arg=0x5571195b24c0) at
thread/qthread_unix.cpp:368
#9 0x00007f3398d6d61b in start_thread (arg=0x7f337a59f700) at
pthread_create.c:465
#10 0x00007f3399a3d91f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

---Type <return> to continue, or q <return> to quit---
Thread 4 (Thread 0x7f337bfff700 (LWP 1630)):
#0 0x00007f3399a3136b in __GI___poll (fds=0x7f3370004a00, nfds=1, timeout=-1)
at ../sysdeps/unix/sysv/linux/poll.c:29
#1 0x00007f3391cdaed9 in g_main_context_poll (priority=<optimized out>,
n_fds=1, fds=0x7f3370004a00, timeout=<optimized out>,
context=0x7f3370000bf0) at gmain.c:4187
#2 g_main_context_iterate (context=***@entry=0x7f3370000bf0,
block=***@entry=1, dispatch=***@entry=1,
self=<optimized out>) at gmain.c:3881
#3 0x00007f3391cdafec in g_main_context_iteration (context=0x7f3370000bf0,
may_block=***@entry=1) at gmain.c:3947
#4 0x00007f339a89c33f in QEventDispatcherGlib::processEvents
(this=0x7f3370000b20, flags=...)
at kernel/qeventdispatcher_glib.cpp:423
#5 0x00007f339a84a0ea in QEventLoop::exec (this=***@entry=0x7f337bffec40,
flags=..., ***@entry=...) at kernel/qeventloop.cpp:212
#6 0x00007f339a69b8ba in QThread::exec (this=***@entry=0x55711939c4f0) at
thread/qthread.cpp:515
#7 0x00007f339e9022a5 in QQmlThreadPrivate::run (this=0x55711939c4f0) at
qml/ftw/qqmlthread.cpp:147
#8 0x00007f339a69fb92 in QThreadPrivate::start (arg=0x55711939c4f0) at
thread/qthread_unix.cpp:368
#9 0x00007f3398d6d61b in start_thread (arg=0x7f337bfff700) at
pthread_create.c:465
#10 0x00007f3399a3d91f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

---Type <return> to continue, or q <return> to quit---
Thread 3 (Thread 0x7f3381ec8700 (LWP 1579)):
#0 0x00007f3399a3136b in __GI___poll (fds=0x7f3374013150, nfds=4, timeout=-1)
at ../sysdeps/unix/sysv/linux/poll.c:29
#1 0x00007f3391cdaed9 in g_main_context_poll (priority=<optimized out>,
n_fds=4, fds=0x7f3374013150, timeout=<optimized out>,
context=0x7f3374000bf0) at gmain.c:4187
#2 g_main_context_iterate (context=***@entry=0x7f3374000bf0,
block=***@entry=1, dispatch=***@entry=1,
self=<optimized out>) at gmain.c:3881
#3 0x00007f3391cdafec in g_main_context_iteration (context=0x7f3374000bf0,
may_block=***@entry=1) at gmain.c:3947
#4 0x00007f339a89c33f in QEventDispatcherGlib::processEvents
(this=0x7f3374000b20, flags=...)
at kernel/qeventdispatcher_glib.cpp:423
#5 0x00007f339a84a0ea in QEventLoop::exec (this=***@entry=0x7f3381ec7c20,
flags=..., ***@entry=...) at kernel/qeventloop.cpp:212



#6 0x00007f339a69b8ba in QThread::exec (
this=***@entry=0x7f339af26060 <(anonymous
namespace)::Q_QGS__q_manager::innerFunction()::holder>) at
thread/qthread.cpp:515
#7 0x00007f339acb2479 in QDBusConnectionManager::run (
this=0x7f339af26060 <(anonymous
namespace)::Q_QGS__q_manager::innerFunction()::holder>) at
qdbusconnection.cpp:178
#8 0x00007f339a69fb92 in QThreadPrivate::start (
arg=0x7f339af26060 <(anonymous
namespace)::Q_QGS__q_manager::innerFunction()::holder>) at
thread/qthread_unix.cpp:368
---Type <return> to continue, or q <return> to quit---
#9 0x00007f3398d6d61b in start_thread (arg=0x7f3381ec8700) at
pthread_create.c:465
#10 0x00007f3399a3d91f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f338403e700 (LWP 1404)):
#0 0x00007f3399a3136b in __GI___poll (fds=***@entry=0x7f338403db68,
nfds=***@entry=1, timeout=***@entry=-1)
at ../sysdeps/unix/sysv/linux/poll.c:29
#1 0x00007f33a00abfe7 in poll (__timeout=-1, __nfds=1, __fds=0x7f338403db68)
at /usr/include/bits/poll2.h:46
#2 _xcb_conn_wait (c=***@entry=0x55711937c6a0, cond=***@entry=0x55711937c6e0,
vector=***@entry=0x0, count=***@entry=0x0)
at xcb_conn.c:479
#3 0x00007f33a00addda in xcb_wait_for_event (c=0x55711937c6a0) at xcb_in.c:693
#4 0x00007f3385d8ca49 in QXcbEventReader::run (this=0x557119387660) at
qxcbconnection.cpp:1335
#5 0x00007f339a69fb92 in QThreadPrivate::start (arg=0x557119387660) at
thread/qthread_unix.cpp:368
#6 0x00007f3398d6d61b in start_thread (arg=0x7f338403e700) at
pthread_create.c:465
#7 0x00007f3399a3d91f in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f33a20f7940 (LWP 1326)):
---Type <return> to continue, or q <return> to quit---
#0 0x00007f339e7bc7c5 in QV4::PersistentValueStorage::allocate
(this=0x55711959f670) at jsruntime/qv4persistent.cpp:189
#1 0x00007f339e9355fb in QQmlListModel::get (this=0x55711cc46e10, index=2184)
at types/qqmllistmodel.cpp:2295
#2 0x00007f339e93d5d0 in QQmlListModel::qt_static_metacall
(_o=***@entry=0x55711cc46e10, _c=***@entry=QMetaObject::InvokeMetaMethod,
_id=***@entry=5, _a=***@entry=0x7ffc2b8559d0) at
.moc/moc_qqmllistmodel_p.cpp:129
#3 0x00007f339e93db45 in QQmlListModel::qt_metacall (this=0x55711cc46e10,
_c=QMetaObject::InvokeMetaMethod, _id=5,
_a=0x7ffc2b8559d0) at .moc/moc_qqmllistmodel_p.cpp:208
#4 0x00007f339e8b5759 in QQmlObjectOrGadget::metacall (this=0x7ffc2b855d30,
type=QMetaObject::InvokeMetaMethod,
index=<optimized out>, argv=<optimized out>) at
qml/qqmlpropertycache.cpp:1713
#5 0x00007f339e832c19 in CallMethod (object=..., index=<optimized out>,
returnType=<optimized out>, argCount=<optimized out>,
argTypes=<optimized out>, engine=<optimized out>, callArgs=<optimized out>,
callType=<optimized out>)
at jsruntime/qv4qobjectwrapper.cpp:1086
#6 0x00007f339e83463e in CallPrecise (object=..., data=...,
engine=***@entry=0x557119592730,
callArgs=***@entry=0x7f33791a0650,
callType=***@entry=QMetaObject::InvokeMetaMethod)
at jsruntime/qv4qobjectwrapper.cpp:1348
#7 0x00007f339e835329 in QV4::QObjectMethod::callInternal (this=<optimized
out>, callData=0x7f33791a0650, scope=...)
at jsruntime/qv4qobjectwrapper.cpp:1842
---Type <return> to continue, or q <return> to quit---
#8 0x00007f339e84e3fd in QV4::Object::call (d=0x7f33791a0650, scope=...,
this=<optimized out>) at jsruntime/qv4object_p.h:372
#9 QV4::Runtime::method_callProperty (engine=0x557119592730,
nameIndex=<optimized out>, callData=0x7f33791a0650)
at jsruntime/qv4runtime.cpp:1104
#10 0x00007f32cf323183 in ?? ()
#11 0x000055711d7fb4a0 in ?? ()
#12 0xf02ed8d3ae10c300 in ?? ()
#13 0x0000000000000000 in ?? ()

(gdb) quit
--
You are receiving this mail because:
You are watching all bug changes.
Germano Massullo
2018-01-21 15:37:25 UTC
Permalink
https://bugs.kde.org/show_bug.cgi?id=389283

--- Comment #1 from Germano Massullo <***@gmail.com> ---
Some other infos
KDE Frameworks 5.42.0
Qt 5.9.2

Moreover, maybe unrelated to the bug, but I have noticed that everytime Plasma
ceases to hang, a popup of updates notification appears from the Plasma panel
notification icon
--
You are receiving this mail because:
You are watching all bug changes.
Germano Massullo
2018-01-21 17:59:46 UTC
Permalink
https://bugs.kde.org/show_bug.cgi?id=389283

--- Comment #2 from Germano Massullo <***@gmail.com> ---
top entry

1326 user 20 0 6892980 1,241g 39340 R 99,7 33,2 20:35.68 plasmashell
--
You are receiving this mail because:
You are watching all bug changes.
Rex Dieter
2018-01-21 19:22:11 UTC
Permalink
https://bugs.kde.org/show_bug.cgi?id=389283

Rex Dieter <***@gmail.com> changed:

What |Removed |Added
----------------------------------------------------------------------------
CC| |***@gmail.com
--
You are receiving this mail because:
You are watching all bug changes.
Christoph Feck
2018-02-16 01:10:29 UTC
Permalink
https://bugs.kde.org/show_bug.cgi?id=389283

--- Comment #3 from Christoph Feck <***@kde.org> ---
Could you please try with a fresh Plasma configuration? (Move
~/.config/plasma*rc temporary away, or create a new user account)

If this is not reproducible there, try to find out which change causes the CPU
issue. Otherwise, even try to remove the default widgets (task bar,
notification area, etc.)

It could give us a clue which part of the code is responsible for the CPU
usage.
--
You are receiving this mail because:
You are watching all bug changes.
Christoph Feck
2018-03-01 01:36:12 UTC
Permalink
https://bugs.kde.org/show_bug.cgi?id=389283

--- Comment #4 from Christoph Feck <***@kde.org> ---
If you can provide the information requested in comment #3, please add it.
--
You are receiving this mail because:
You are watching all bug changes.
Christoph Feck
2018-03-29 14:08:15 UTC
Permalink
https://bugs.kde.org/show_bug.cgi?id=389283

Christoph Feck <***@kde.org> changed:

What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEEDSINFO
Resolution|--- |WAITINGFORINFO

--- Comment #5 from Christoph Feck <***@kde.org> ---
To further investigate this issue, Plasma developers need the information
requested in comment #3. If you can provide it, or need help with finding
that information, please add a comment.
--
You are receiving this mail because:
You are watching all bug changes.
Germano Massullo
2018-03-29 16:01:07 UTC
Permalink
https://bugs.kde.org/show_bug.cgi?id=389283

--- Comment #6 from Germano Massullo <***@gmail.com> ---
(In reply to Christoph Feck from comment #5)
Post by Christoph Feck
To further investigate this issue, Plasma developers need the information
requested in comment #3. If you can provide it, or need help with finding
that information, please add a comment.
I currently cannot reproduce the bug. As soon it will happen again I will
provide needed infos
--
You are receiving this mail because:
You are watching all bug changes.
Christoph Feck
2018-04-26 21:31:30 UTC
Permalink
https://bugs.kde.org/show_bug.cgi?id=389283

Christoph Feck <***@kde.org> changed:

What |Removed |Added
----------------------------------------------------------------------------
Status|NEEDSINFO |RESOLVED
Resolution|WAITINGFORINFO |WORKSFORME

--- Comment #7 from Christoph Feck <***@kde.org> ---
Thanks for the update; changing status. If you see this issue again, please add
a comment or reopen the ticket.
--
You are receiving this mail because:
You are watching all bug changes.
Loading...