Bug 366549 - plasmashell stops updating panel after suspend/resume or locked screen
Summary: plasmashell stops updating panel after suspend/resume or locked screen
Status: RESOLVED WORKSFORME
Alias: None
Product: plasmashell
Classification: Plasma
Component: general (show other bugs)
Version: 5.7.3
Platform: Arch Linux Linux
: NOR normal
Target Milestone: 1.0
Assignee: David Edmundson
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-08-09 13:07 UTC by Thilo-Alexander Ginkel
Modified: 2020-10-27 03:22 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thilo-Alexander Ginkel 2016-08-09 13:07:43 UTC
Hello everyone,

I'm aware of #341951, which is marked as fixed, though. As I am hitting a very similar bug with current Plasma 5, I am opening this new issue. Feel free to resolve it as duplicate and reopen #341951 if that makes more sense.

I am using Plasma 5.7.3 (Breeze Dark theme) with X.org Intel drivers in DRI2 mode. Kwin compositing is configured to use OpenGL 2.0.

At regular intervals, most easily triggered by a suspend/resume cycle or screen lock operation my plasma panel stops updating, i.e., the clock freezes and the task manager settings no longer reflect the currently running applications. The panel remains responsive, though, i.e., clicking on the clock opens the calendar. Restarting plasmashell resolves the problem until it eventually surfaces again.

I tried getting a backtrace from plasmashell, but connecting gdb and issuing the 'backtrace' command just produces:

(gdb) backtrace
No stack.

Any ideas how to debug this further are much appreciated!

Thanks!

P.S.:

xf86-video-intel version 1:2.99.917+691+ga77397a-1

Reproducible: Always

Steps to Reproduce:
1. Log in to KDE Plasma session
2. Suspend/resume
3. Notice that the clock stops updating
Comment 1 Thilo-Alexander Ginkel 2016-08-09 20:53:32 UTC
Brief update: I have been able to capture a plasmashell backtrace after the freeze happened:

Thread 8 (Thread 0x7f499c8e1700 (LWP 4136)):
#0  0x00007f4a5e26d48d in poll () from /usr/lib/libc.so.6
#1  0x00007f4a59523fd6 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0x00007f4a595240ec in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007f4a5eb8f57f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#4  0x00007f4a5eb390da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#5  0x00007f4a5e95c0f3 in QThread::exec() () from /usr/lib/libQt5Core.so.5
#6  0x00007f499ee050d7 in KCupsConnection::run() () from /usr/lib/libkcupslib.so
#7  0x00007f4a5e960d78 in ?? () from /usr/lib/libQt5Core.so.5
#8  0x00007f4a5da70454 in start_thread () from /usr/lib/libpthread.so.0
#9  0x00007f4a5e2767df in clone () from /usr/lib/libc.so.6

Thread 7 (Thread 0x7f49afc14700 (LWP 4135)):
#0  0x00007f4a5e26d48d in poll () from /usr/lib/libc.so.6
#1  0x00007f4a59523fd6 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0x00007f4a595240ec in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007f4a5eb8f59b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#4  0x00007f4a5eb390da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#5  0x00007f4a5e95c0f3 in QThread::exec() () from /usr/lib/libQt5Core.so.5
#6  0x00007f4a6285c8a6 in ?? () from /usr/lib/libQt5Quick.so.5
#7  0x00007f4a5e960d78 in ?? () from /usr/lib/libQt5Core.so.5
#8  0x00007f4a5da70454 in start_thread () from /usr/lib/libpthread.so.0
#9  0x00007f4a5e2767df in clone () from /usr/lib/libc.so.6

Thread 6 (Thread 0x7f4a36da2700 (LWP 4134)):
#0  0x00007f4a5da7610f in pthread_cond_wait@@GLIBC_2.3.2 () from /usr/lib/libpthread.so.0
#1  0x00007f4a642ecac4 in ?? () from /usr/lib/libQt5Script.so.5
#2  0x00007f4a642ecb09 in ?? () from /usr/lib/libQt5Script.so.5
#3  0x00007f4a5da70454 in start_thread () from /usr/lib/libpthread.so.0
#4  0x00007f4a5e2767df in clone () from /usr/lib/libc.so.6

Thread 5 (Thread 0x7f4a44b56700 (LWP 4133)):
#0  0x00007f4a5e26d48d in poll () from /usr/lib/libc.so.6
#1  0x00007f4a59523fd6 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0x00007f4a595240ec in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007f4a5eb8f57f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#4  0x00007f4a5eb390da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#5  0x00007f4a5e95c0f3 in QThread::exec() () from /usr/lib/libQt5Core.so.5
#6  0x00007f4a61cbd445 in ?? () from /usr/lib/libQt5Qml.so.5
---Type <return> to continue, or q <return> to quit---
#7  0x00007f4a5e960d78 in ?? () from /usr/lib/libQt5Core.so.5
#8  0x00007f4a5da70454 in start_thread () from /usr/lib/libpthread.so.0
#9  0x00007f4a5e2767df in clone () from /usr/lib/libc.so.6

Thread 4 (Thread 0x7f4a467bf700 (LWP 4132)):
#0  0x00007f4a5e26d48d in poll () from /usr/lib/libc.so.6
#1  0x00007f4a59523fd6 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0x00007f4a595240ec in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007f4a5eb8f57f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#4  0x00007f4a5eb390da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#5  0x00007f4a5e95c0f3 in QThread::exec() () from /usr/lib/libQt5Core.so.5
#6  0x00007f4a61cbd445 in ?? () from /usr/lib/libQt5Qml.so.5
#7  0x00007f4a5e960d78 in ?? () from /usr/lib/libQt5Core.so.5
#8  0x00007f4a5da70454 in start_thread () from /usr/lib/libpthread.so.0
#9  0x00007f4a5e2767df in clone () from /usr/lib/libc.so.6

Thread 3 (Thread 0x7f4a47fff700 (LWP 4130)):
#0  0x00007f4a5e26d48d in poll () from /usr/lib/libc.so.6
#1  0x00007f4a59523fd6 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0x00007f4a595240ec in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007f4a5eb8f59b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#4  0x00007f4a5eb390da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#5  0x00007f4a5e95c0f3 in QThread::exec() () from /usr/lib/libQt5Core.so.5
#6  0x00007f4a5f6dce75 in ?? () from /usr/lib/libQt5DBus.so.5
#7  0x00007f4a5e960d78 in ?? () from /usr/lib/libQt5Core.so.5
#8  0x00007f4a5da70454 in start_thread () from /usr/lib/libpthread.so.0
#9  0x00007f4a5e2767df in clone () from /usr/lib/libc.so.6

Thread 2 (Thread 0x7f4a4de05700 (LWP 4129)):
#0  0x00007f4a5e26d48d in poll () from /usr/lib/libc.so.6
#1  0x00007f4a632368e0 in ?? () from /usr/lib/libxcb.so.1
#2  0x00007f4a63238679 in xcb_wait_for_event () from /usr/lib/libxcb.so.1
#3  0x00007f4a4fb42469 in ?? () from /usr/lib/libQt5XcbQpa.so.5
#4  0x00007f4a5e960d78 in ?? () from /usr/lib/libQt5Core.so.5
#5  0x00007f4a5da70454 in start_thread () from /usr/lib/libpthread.so.0
#6  0x00007f4a5e2767df in clone () from /usr/lib/libc.so.6

Thread 1 (Thread 0x7f4a64b5c800 (LWP 4128)):
#0  0x00007f4a5e26d48d in poll () from /usr/lib/libc.so.6
#1  0x00007f4a59523fd6 in ?? () from /usr/lib/libglib-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#2  0x00007f4a595240ec in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007f4a5eb8f57f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#4  0x00007f4a5eb390da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#5  0x00007f4a5eb415cc in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#6  0x000000000041b54d in main (argc=<optimized out>, argv=<optimized out>) at /home/tg/abs/plasma-workspace/src/plasma-workspace-5.7.3/shell/main.cpp:166

There a symbols missing for sure, but most importantly, this no longer looks like a lockup in the Intel driver. Any ideas?
Comment 2 Thilo-Alexander Ginkel 2016-08-10 23:21:14 UTC
Ditched xf86-video-intel in favor of the generic modesetting driver and the issue is gone...
Comment 3 Thiago Sueto 2020-10-27 03:22:46 UTC
I think this should be fine to be closed as RESOLVED/WORKSFORME.

If this issue is still reproducible for you with the Intel drivers, Thilo, please reopen this bug report, yeah? :)