https://bugs.kde.org/show_bug.cgi?id=469497
Bug ID: 469497
Summary: Kwin freezes when I try to quickly switch windows
twice
Classification: Plasma
Product: kwin
Version: 5.26.90
Platform: Debian testing
OS: Linux
Status: REPORTED
Severity: normal
Priority: NOR
Component: core
Assignee: [email protected]
Reporter: [email protected]
Target Milestone: ---
SUMMARY
Sometimes when I press Alt-Tab twice quickly in succession kwin, and therefore
all desktop freezes. This is recoverable by killing kwin.
The backtrace when the freeze happened is:
#0 __futex_abstimed_wait_common64 (private=0, cancel=true, abstime=0x0,
op=393, expected=0, futex_word=0x55a42bee68d4) at ./nptl/futex-internal.c:57
#1 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x55a42bee68d4,
expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x0,
private=private@entry=0, cancel=cancel@entry=true) at
./nptl/futex-internal.c:87
#2 0x00007fe643aa4d9b in __GI___futex_abstimed_wait_cancelable64
(futex_word=futex_word@entry=0x55a42bee68d4, expected=expected@entry=0,
clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at
./nptl/futex-internal.c:139
#3 0x00007fe643aa73f8 in __pthread_cond_wait_common (abstime=0x0, clockid=0,
mutex=0x55a42bee6880, cond=0x55a42bee68a8) at ./nptl/pthread_cond_wait.c:503
#4 ___pthread_cond_wait (cond=0x55a42bee68a8, mutex=0x55a42bee6880) at
./nptl/pthread_cond_wait.c:618
#5 0x00007fe6448d1a2b in QWaitConditionPrivate::wait(QDeadlineTimer)
(deadline=..., this=0x55a42bee6880) at thread/qwaitcondition_unix.cpp:146
#6 QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>,
mutex=0x55a42bf61078, deadline=...) at thread/qwaitcondition_unix.cpp:225
#7 0x00007fe64620bd58 in
QSGThreadedRenderLoop::polishAndSync(QSGThreadedRenderLoop::Window*, bool)
(this=0x55a42b174710, w=0x55a42be30f80, inExpose=<optimized out>) at
scenegraph/qsgthreadedrenderloop.cpp:1603
#8 0x00007fe646276e20 in QQuickWindow::event(QEvent*) (this=0x55a42beda340,
e=0x7ffd9db8e490) at items/qquickwindow.cpp:1863
#9 0x00007fe644162fae in QApplicationPrivate::notify_helper(QObject*, QEvent*)
(this=<optimized out>, receiver=0x55a42beda340, e=0x7ffd9db8e490) at
kernel/qapplication.cpp:3640
#10 0x00007fe644ab16f8 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
(receiver=0x55a42beda340, event=0x7ffd9db8e490) at
kernel/qcoreapplication.cpp:1064
#11 0x00007fe644ab18be in QCoreApplication::sendEvent(QObject*, QEvent*)
(receiver=<optimized out>, event=<optimized out>) at
kernel/qcoreapplication.cpp:1462
#12 0x00007fe644f2c4b3 in QPlatformWindow::deliverUpdateRequest()
(this=<optimized out>) at kernel/qplatformwindow.cpp:796
#13 QPlatformWindow::windowEvent(QEvent*) (this=<optimized out>,
event=<optimized out>) at kernel/qplatformwindow.cpp:476
#14 0x00007fe64416a1f9 in QApplication::notify(QObject*, QEvent*)
(this=0x7ffd9db8ea10, receiver=0x55a42beda340, e=0x7ffd9db8e6f0) at
kernel/qapplication.cpp:2882
#15 0x00007fe644ab16f8 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
(receiver=0x55a42beda340, event=0x7ffd9db8e6f0) at
kernel/qcoreapplication.cpp:1064
#16 0x00007fe644ab18be in QCoreApplication::sendEvent(QObject*, QEvent*)
(receiver=<optimized out>, event=<optimized out>) at
kernel/qcoreapplication.cpp:1462
#17 0x00007fe644b08c31 in QTimerInfoList::activateTimers()
(this=0x55a42a60fa60) at kernel/qtimerinfo_unix.cpp:643
#18 0x00007fe644b094c4 in timerSourceDispatch(GSource*, GSourceFunc, gpointer)
(source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:183
#19 0x00007fe6428627a9 in g_main_context_dispatch () at
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#20 0x00007fe642862a38 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#21 0x00007fe642862acc in g_main_context_iteration () at
/lib/x86_64-linux-gnu/libglib-2.0.so.0
This indicates IMHO that the problem is in QSGThreadedRenderLoop, because it is
waiting on a condition variable it uses to wait for processing of the
individual events. However, I'm not quite sure what to do about it.
SOFTWARE/OS VERSIONS
Linux/KDE Plasma:
(available in About System)
KDE Plasma Version: 5.27.2
KDE Frameworks Version: 5.103.0
Qt Version: 5.15.8
--
You are receiving this mail because:
You are watching all bug changes.