Bug 458547

Summary: Kwin crashes / restarts and suspend compositing
Product: [Plasma] kwin Reporter: yaco <yacolinux>
Component: compositingAssignee: KWin default assignee <kwin-bugs-null>
Severity: crash CC: nate, yacolinux
Priority: NOR    
Version: 5.25.4   
Target Milestone: ---   
Platform: Neon   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: from Dr. Konqi
dr konqi output
dr konqi output with debug symbols

Description yaco 2022-08-31 13:31:22 UTC
Created attachment 151732 [details]
from Dr. Konqi

Under heavy use of many windows, clicking icons on the plasma panel, or switching tabs - by clicking - in a browser, switchting tabs - by clicking - in konsole, etc. Kwin crashes, restarts and / or disables compositing. After several crashes, in System Preferences, the compositor gets disabled.

In multi-monitor setups (two, three), the entire desktop "flashes" in the crash, screens go to full black, then they come back with Kwin crashed, sometimes with the compositor enabled but, after several crashes, the compositor gets disabled.

Everything seems to work well with the compositor fully disabled.

1. Open lots of windows
2. Fastly switch of windows by clicking them in the plasma panel
3. You should see Kwin crashing.



 Operating System: KDE neon 5.25
KDE Plasma Version: 5.25.4
KDE Frameworks Version: 5.97.0
Qt Version: 5.15.5
Kernel Version: 5.15.0-46-lowlatency (64-bit)
Graphics Platform: X11
Processors: 4 × AMD Ryzen 3 4300U with Radeon Graphics
Memory: 7.2 GiB of RAM
Graphics Processor: RENOIR
Manufacturer: HP
Product Name: HP ENVY x360 Convertible 13-ay0xxx

Comment 1 yaco 2022-08-31 13:33:04 UTC
Created attachment 151733 [details]
dr konqi output

Got this output from Dr.Konqi
Comment 2 Nate Graham 2022-08-31 20:10:23 UTC
Pasting inline for searchability:

Thread 1 (Thread 0x7f203db749c0 (LWP 1840)):
[KCrash Handler]
#4  0x00007f2044e9beb4 in KWin::Window::output() const () at /lib/x86_64-linux-gnu/libkwin.so.5
#5  0x00007f2044ebb74a in KWin::Workspace::clientArea(KWin::clientAreaOption, KWin::Window const*) const () at /lib/x86_64-linux-gnu/libkwin.so.5
#6  0x00007f2044e54abf in  () at /lib/x86_64-linux-gnu/libkwin.so.5
#7  0x00007f2044e559a3 in  () at /lib/x86_64-linux-gnu/libkwin.so.5
#8  0x00007f2044e55a25 in  () at /lib/x86_64-linux-gnu/libkwin.so.5
#9  0x00007f20449f85c5 in  () at /lib/x86_64-linux-gnu/libQt5Qml.so.5
#10 0x00007f20448c03d5 in  () at /lib/x86_64-linux-gnu/libQt5Qml.so.5
#11 0x00007f20448c24b6 in  () at /lib/x86_64-linux-gnu/libQt5Qml.so.5
#12 0x00007f20448c35a1 in QV4::QObjectMethod::callInternal(QV4::Value const*, QV4::Value const*, int) const () at /lib/x86_64-linux-gnu/libQt5Qml.so.5
#13 0x00007f20448f353b in QV4::Runtime::CallPropertyLookup::call(QV4::ExecutionEngine*, QV4::Value const&, unsigned int, QV4::Value*, int) () at /lib/x86_64-linux-gnu/libQt5Qml.so.5
#14 0x00007f1fe6eee213 in  ()
#15 0x0000000000000000 in  ()
[Inferior 1 (process 1840) detached]

I suspect this is a duplicate of Bug 448102, but unfortunately the backtrace is incomplete and missing debug symbols that we need to determine that for sure. Could you please install debug symbols for KWin, reproduce the crash, and attach a new symbolicated backtrace? See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports

Comment 3 yaco 2022-09-01 10:02:14 UTC
I'll install the debug symbols and send a better report. Thanks.
Comment 4 yaco 2022-09-01 11:41:21 UTC
Created attachment 151759 [details]
dr konqi output with debug symbols

I have installed the following packages, then reloaded the dump in Dr. Konqi's window:

libqt5qml5-dbgsym libqt5qmlmodels5-dbgsym libqt5qmlworkerscript5-dbgsym libqt5core5a-dbgsym kwin-x11-dbgsym

also, I see there's a mention in the new output about snap-assist, I'm using the snap-assist script:

So I'll try to run Kwin with this script disabled/deleted and then, with an upgraded one if I find a new version.
Comment 5 yaco 2022-09-01 11:43:55 UTC
Also, I got to trigger the bug precisely trying to screenshot an Edge browser window running Youtube (with snap-assist script enabled).

So I'll try to repeat this and see if there's a pattern there.

Thank you very much for your time, and I'll keep you posted.
Comment 6 Nate Graham 2022-09-01 13:44:28 UTC
Sounds good, thanks! The latest backtrace is better but still missing a few symbols:

Thread 1 (Thread 0x7efe2f9299c0 (LWP 79848)):
[KCrash Handler]
#4  0x00007efe36c50eb4 in KWin::Window::output() const () at /lib/x86_64-linux-gnu/libkwin.so.5
#5  0x00007efe36c7074a in KWin::Workspace::clientArea(KWin::clientAreaOption, KWin::Window const*) const () at /lib/x86_64-linux-gnu/libkwin.so.5
#6  0x00007efe36c09abf in  () at /lib/x86_64-linux-gnu/libkwin.so.5
#7  0x00007efe36c0a9a3 in  () at /lib/x86_64-linux-gnu/libkwin.so.5
#8  0x00007efe36c0aa25 in  () at /lib/x86_64-linux-gnu/libkwin.so.5
#9  0x00007efe367ad5c5 in QQmlObjectOrGadget::metacall(QMetaObject::Call, int, void**) const (this=this@entry=0x7ffe567019e0, type=type@entry=QMetaObject::InvokeMetaMethod, index=<optimized out>, index@entry=101, argv=<optimized out>) at ../../include/QtQml/5.15.5/QtQml/private/../../../../../src/qml/qml/ftw/qflagpointer_p.h:351
Comment 7 yaco 2022-09-01 17:12:41 UTC
I didn't had the time to install the missing stuff to get more debug information, but since I deleted the kwin script snap-asist I'm not having any failures (tried several times to trigger them), till now I see everything working rock solid. 

I'll keep you posted, but right now it seems the script was causing Kwin to crash.
Comment 8 Nate Graham 2022-09-01 17:15:59 UTC
Yep, see Bug 458598.

It seems like many people are missing a package and it causes the script to freak out and make KWin crash,

*** This bug has been marked as a duplicate of bug 458598 ***
Comment 9 yaco 2022-09-05 12:07:14 UTC
I've been testing the newer snap-assist with the latest KDE Neon (some QT packages were updated just yesterday), and now (few moments ago), had a crash, just like the crash with the previous versions (both, snap-assist and KDE Neon). This is happening in a multi-monitor setup (this time it was triggered by changing virtual desktops + moving "half-monitor" windows, thus triggering the snap-assist popup), didn't happened when I was just using snap-assist with one monitor (laptop).

Previously, I was testing KDE Neon (latest), WITHOUT snap-assist (deleted from Kwin scripts), and it worked just fine with one monitor, two monitor setups. 

Now I've just deleted snap-assist and I'm testing latest KDE Neon (logged out, logged in, compositor re-enabled).