Summary: | crash on display sleep (maybe disconnect?) | ||
---|---|---|---|
Product: | [Plasma] kwin | Reporter: | Harald Sitter <sitter> |
Component: | wayland-generic | Assignee: | KWin default assignee <kwin-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | alois1, nate, sonichedgehog_hyperblast00 |
Priority: | NOR | ||
Version: | git master | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/plasma/kwin/commit/eef97904b61921753ce1ec1dbfa732d984de73c7 | Version Fixed In: | 5.22.0 |
Attachments: | trace |
Super reproducible by turning off the display and turning it on again, actually. #6 KWin::Workspace::constrainedStackingOrder() (this=this@entry=0x559519354a00) at ./src/layers.cpp:503 screen = 0 c = 0x0 current = @0x7f1458636990: {<QMap<KWin::Group*, KWin::Layer>> = {d = 0x0}, <No data fields>} this looks odd, the d pointer of a QMap cannot be nullptr, can it? Looks like the crash supposedly fixed in commit 618c330ca80d525f6666f76c17cc4568ba5675fe, was that fix incomplete? No, it looks like a different issue. Harald runs kwin_wayland from git master. From only looking at the code I'd say there is no bounds check on the minimum_layer[] access, meaning it will sail right past it in a Release build and get garbage back if the screen is out of bounds (which conceivably it can be since I would have no screens at some point when it is powered off). IOW I believe there needs to be some sort of skip condition if screen<0 || screen >= minimum_layer.size() to not access out of bounds maps. That might be the case. If not all clients have processed the screen layout change and we try to update the stacking order, minimum_layer can be accessed beyond valid range. Git commit eef97904b61921753ce1ec1dbfa732d984de73c7 by Vlad Zahorodnii. Committed on 12/05/2021 at 11:50. Pushed by vladz into branch 'master'. Simplify Workspace::constrainedStackingOrder() Workspace::constrainedStackingOrder() is a constant source of issues. This change replaces the current logic that builds the stacking order to hopefully make constrainedStackingOrder() less crashy. With the new version, constrainedStackingOrder() doesn't perform layer caching. On the other hand, it's quite rare to see apps in the wild that have more than just 1 or 2 members in the window group. M +46 -26 src/layers.cpp https://invent.kde.org/plasma/kwin/commit/eef97904b61921753ce1ec1dbfa732d984de73c7 |
Created attachment 137830 [details] trace SUMMARY I was switching my display from DP to HDMI port, to work on a different machine, that may or may not have caused the display to completely disconnect from my main machine. Upon switching back to the DP port kwin had crashed and taken down X11 support along with it (x11 apps wouldn't even start anymore). This may also have to do with session locking. It may also have only been happening upon activating the port again as my journal has the desktop portal detecting the display again, shortly before kwin went down Apr 23 15:54:31 ajax xdg-desktop-portal-kde[2081]: xdp-kde-wayland-integration: Adding output: Apr 23 15:54:31 ajax xdg-desktop-portal-kde[2081]: xdp-kde-wayland-integration: manufacturer: "LG Electronics" Apr 23 15:54:31 ajax xdg-desktop-portal-kde[2081]: xdp-kde-wayland-integration: model: "LG HDR 4K/477914" Apr 23 15:54:31 ajax xdg-desktop-portal-kde[2081]: xdp-kde-wayland-integration: resolution: QSize(3840, 2160) ... Apr 23 15:56:14 ajax kernel: kwin_wayland[1608]: segfault at 0 ip 00007f1459fd13de sp 00007ffc2ec35520 error 4 in libkwin.so.5.21.80[7f1459eec000+218000] SOFTWARE/OS VERSIONS Operating System: KDE neon Unstable Edition KDE Plasma Version: 5.21.80 KDE Frameworks Version: 5.82.0 Qt Version: 5.15.2 Kernel Version: 5.8.0-50-generic (64-bit) Graphics Platform: Wayland Processors: 12 × AMD Ryzen 5 3600X 6-Core Processor Memory: 31,3 GiB of RAM Graphics Processor: AMD Radeon RX 5700 XT ADDITIONAL INFORMATION #0 0x00007f1459fd13de in std::__atomic_base<int>::load(std::memory_order) const (__m=std::memory_order_relaxed, this=0x0) at /usr/include/c++/9/bits/atomic_base.h:413 count = <optimized out> screen = 0 c = 0x0 current = @0x7f1458636990: {<QMap<KWin::Group*, KWin::Layer>> = {d = 0x0}, <No data fields>} mLayer = <optimized out> l = KWin::FirstLayer it = {i = 0x55951b2f7208} end = {i = 0x55951b2f7278} layer = {{<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}} minimum_layer = {d = 0x7f1458636978 <qt_array+24>} stacking = {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x55951a788c48}, d = 0x55951a788c48}} #1 QAtomicOps<int>::loadRelaxed<int>(std::atomic<int> const&) (_q_value=...) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qatomic_cxx11.h:239 count = <optimized out> screen = 0 c = 0x0 current = @0x7f1458636990: {<QMap<KWin::Group*, KWin::Layer>> = {d = 0x0}, <No data fields>} mLayer = <optimized out> l = KWin::FirstLayer it = {i = 0x55951b2f7208} end = {i = 0x55951b2f7278} layer = {{<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}} minimum_layer = {d = 0x7f1458636978 <qt_array+24>} stacking = {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x55951a788c48}, d = 0x55951a788c48}} #2 QBasicAtomicInteger<int>::loadRelaxed() const (this=0x0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qbasicatomic.h:107 count = <optimized out> screen = 0 c = 0x0 current = @0x7f1458636990: {<QMap<KWin::Group*, KWin::Layer>> = {d = 0x0}, <No data fields>} mLayer = <optimized out> l = KWin::FirstLayer it = {i = 0x55951b2f7208} end = {i = 0x55951b2f7278} layer = {{<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}} minimum_layer = {d = 0x7f1458636978 <qt_array+24>} stacking = {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x55951a788c48}, d = 0x55951a788c48}} #3 QtPrivate::RefCount::isShared() const (this=0x0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qrefcount.h:101 count = <optimized out> screen = 0 c = 0x0 current = @0x7f1458636990: {<QMap<KWin::Group*, KWin::Layer>> = {d = 0x0}, <No data fields>} mLayer = <optimized out> l = KWin::FirstLayer it = {i = 0x55951b2f7208} end = {i = 0x55951b2f7278} layer = {{<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}} minimum_layer = {d = 0x7f1458636978 <qt_array+24>} stacking = {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x55951a788c48}, d = 0x55951a788c48}} #4 QMap<KWin::Group*, KWin::Layer>::detach() (this=0x7f1458636990 <qt_array+48>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qmap.h:357 screen = 0 c = 0x0 current = @0x7f1458636990: {<QMap<KWin::Group*, KWin::Layer>> = {d = 0x0}, <No data fields>} mLayer = <optimized out> l = KWin::FirstLayer it = {i = 0x55951b2f7208} end = {i = 0x55951b2f7278} layer = {{<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}} minimum_layer = {d = 0x7f1458636978 <qt_array+24>} stacking = {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x55951a788c48}, d = 0x55951a788c48}} #5 QMap<KWin::Group*, KWin::Layer>::find(KWin::Group* const&) (akey=<optimized out>, this=0x7f1458636990 <qt_array+48>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qmap.h:861 screen = 0 c = 0x0 current = @0x7f1458636990: {<QMap<KWin::Group*, KWin::Layer>> = {d = 0x0}, <No data fields>} mLayer = <optimized out> l = KWin::FirstLayer it = {i = 0x55951b2f7208} end = {i = 0x55951b2f7278} layer = {{<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}} minimum_layer = {d = 0x7f1458636978 <qt_array+24>} stacking = {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x55951a788c48}, d = 0x55951a788c48}} #6 KWin::Workspace::constrainedStackingOrder() (this=this@entry=0x559519354a00) at ./src/layers.cpp:503 screen = 0 c = 0x0 current = @0x7f1458636990: {<QMap<KWin::Group*, KWin::Layer>> = {d = 0x0}, <No data fields>} mLayer = <optimized out> l = KWin::FirstLayer it = {i = 0x55951b2f7208} end = {i = 0x55951b2f7278} layer = {{<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}, {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x7f1458637490 <QListData::shared_null>}, d = 0x7f1458637490 <QListData::shared_null>}}} minimum_layer = {d = 0x7f1458636978 <qt_array+24>} stacking = {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x55951a788c48}, d = 0x55951a788c48}} #7 0x00007f1459fd1d68 in KWin::Workspace::updateStackingOrder(bool) (propagate_new_clients=false, this=0x559519354a00) at ./src/layers.cpp:110 new_stacking_order = {<QListSpecialMethods<KWin::Toplevel*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, static is_always_lock_free = true}}}, alloc = 0, begin = 0, end = 0, array = {0x0}}, d = 0x55951a788c48}, d = 0x55951a788c48}} changed = <optimized out> #8 KWin::Workspace::updateStackingOrder(bool) (this=0x559519354a00, propagate_new_clients=propagate_new_clients@entry=false) at ./src/layers.cpp:103 #9 0x00007f145a0b62eb in KWin::X11Client::setFrameGeometry(QRect const&, KWin::AbstractClient::ForceGeometry_t) (this=0x55951a788970, rect=..., force=KWin::AbstractClient::NormalGeometrySet) at ./src/workspace.h:787 frameGeometry = {x1 = -1, y1 = -1, x2 = -1, y2 = 64} oldBufferGeometry = {x1 = 0, y1 = 0, x2 = 1693, y2 = 970} oldFrameGeometry = {x1 = 0, y1 = 0, x2 = 1693, y2 = 970} oldClientGeometry = {x1 = 0, y1 = 29, x2 = 1693, y2 = 966} #10 0x00007f1459f316c5 in KWin::AbstractClient::checkWorkspacePosition(QRect, int, QRect) (this=<optimized out>, oldGeometry=..., oldDesktop=<optimized out>, oldDesktop@entry=-2, oldClientGeometry=...) at ./src/abstract_client.cpp:3529 border = {0, 29, <optimized out>, <optimized out>} oldScreenArea = <optimized out> oldGeomTall = {x1 = 0, y1 = 0, x2 = 1693, y2 = 1079} oldGeomWide = {x1 = 0, y1 = 0, x2 = 1919, y2 = 970} oldTopMax = 0 oldRightMax = 1920 oldBottomMax = 1036 oldLeftMax = 0 screenArea = {x1 = 0, y1 = 0, x2 = -1, y2 = -1} topMax = 0 rightMax = 0 bottomMax = 0 leftMax = 0 newGeom = {x1 = -1, y1 = -1, x2 = -1, y2 = 64} newClientGeom = {x1 = <optimized out>, y1 = 29, x2 = <optimized out>, y2 = <optimized out>} newGeomTall = {x1 = 0, y1 = 0, x2 = 1693, y2 = -1} newGeomWide = {x1 = 0, y1 = 0, x2 = -1, y2 = 970} moveAreaFunc = (QRegion (KWin::Workspace::*)(const KWin::Workspace * const, int, QFlags<KWin::StrutArea>)) 0x7f145a099cc0 <KWin::Workspace::previousRestrictedMoveArea(int, QFlags<KWin::StrutArea>) const> keep = {<optimized out>, <optimized out>, false, <optimized out>} save = <optimized out> padding = {<optimized out>, 0, 0, 0} #11 0x00007f145a09b64c in KWin::Workspace::updateClientArea(bool) (this=this@entry=0x559519354a00, force=force@entry=false) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qrect.h:60 it = {i = 0x55951b444488} s = <optimized out> nscreens = <optimized out> numberOfDesktops = 1 new_wareas = {d = 0x55951a3b5c90} new_rmoveareas = {d = 0x55951bb8eb50} new_sareas = {d = 0x55951a92c400} screens = {d = 0x7f14586369c0 <QArrayData::shared_null>} desktopArea = {x1 = 0, y1 = 0, x2 = -1, y2 = -1} changed = <optimized out> #12 0x00007f145a09cd5b in KWin::Workspace::updateClientArea() (this=this@entry=0x559519354a00) at ./src/workspace.cpp:2243 #13 0x00007f145a09dc67 in KWin::Workspace::desktopResized() (this=0x559519354a00) at ./src/workspace.cpp:1980 geom = {x1 = 0, y1 = 0, x2 = -1, y2 = -1} #14 0x00007f145857f6fe in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffc2ec35ae0, r=0x559519354a00, this=0x559519cea610) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398 obj = std::unique_ptr<QtPrivate::QSlotObjectBase> = {get() = 0x559519cea610} receiver = 0x559519354a00 td = <optimized out> receiverInSameThread = <optimized out> senderData = {previous = 0x0, receiver = 0x559519354a00, sender = 0x5595193d0a50, signal = 4} c = 0x559519cea7f0 connections = {d = 0x5595194a4230} list = <optimized out> inSenderThread = true highestConnectionId = 1547 signalVector = 0x559519c750d0 currentThreadId = 0x7f1452cf8300 sp = <optimized out> signal_spy_set = 0x0 empty_argv = {0x0} senderDeleted = false #15 doActivate<false>(QObject*, int, void**) (sender=0x5595193d0a50, signal_index=4, argv=0x7ffc2ec35ae0) at kernel/qobject.cpp:3886 obj = std::unique_ptr<QtPrivate::QSlotObjectBase> = {get() = 0x559519cea610} receiver = 0x559519354a00 td = <optimized out> receiverInSameThread = <optimized out> senderData = {previous = 0x0, receiver = 0x559519354a00, sender = 0x5595193d0a50, signal = 4} c = 0x559519cea7f0 connections = {d = 0x5595194a4230} list = <optimized out> inSenderThread = true highestConnectionId = 1547 signalVector = 0x559519c750d0 currentThreadId = 0x7f1452cf8300 sp = <optimized out> signal_spy_set = 0x0 empty_argv = {0x0} senderDeleted = false #16 0x00007f145857f6fe in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffc2ec35bc0, r=0x5595193d0a50, this=0x55951931b7a0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398 obj = std::unique_ptr<QtPrivate::QSlotObjectBase> = {get() = 0x55951931b7a0} receiver = 0x5595193d0a50 td = <optimized out> receiverInSameThread = <optimized out> senderData = {previous = 0x0, receiver = 0x5595193d0a50, sender = 0x559519347920, signal = 3} c = 0x5595194a50a0 connections = {d = 0x559519361610} list = <optimized out> inSenderThread = true highestConnectionId = 719 signalVector = 0x5595193631b0 currentThreadId = 0x7f1452cf8300 sp = <optimized out> signal_spy_set = 0x0 empty_argv = {0x0} senderDeleted = false #17 doActivate<false>(QObject*, int, void**) (sender=0x559519347920, signal_index=3, argv=0x7ffc2ec35bc0) at kernel/qobject.cpp:3886 obj = std::unique_ptr<QtPrivate::QSlotObjectBase> = {get() = 0x55951931b7a0} receiver = 0x5595193d0a50 td = <optimized out> receiverInSameThread = <optimized out> senderData = {previous = 0x0, receiver = 0x5595193d0a50, sender = 0x559519347920, signal = 3} c = 0x5595194a50a0 connections = {d = 0x559519361610} list = <optimized out> inSenderThread = true highestConnectionId = 719 signalVector = 0x5595193631b0 currentThreadId = 0x7f1452cf8300 sp = <optimized out> signal_spy_set = 0x0 empty_argv = {0x0} senderDeleted = false #18 0x00007f1458578ac7 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x559519347920, m=m@entry=0x7f145a1c63e0 <KWin::Platform::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3946 #19 0x00007f1459f01ea4 in KWin::Platform::screensQueried() (this=this@entry=0x559519347920) at ./obj-x86_64-linux-gnu/src/kwin_autogen/EWIEGA46WW/moc_platform.cpp:348 #20 0x00007f14517be598 in KWin::DrmBackend::updateOutputs() (this=0x559519347920) at ./src/plugins/platforms/drm/drm_backend.cpp:321 oldOutputs = {d = 0x559519374de0} #21 KWin::DrmBackend::updateOutputs() (this=0x559519347920) at ./src/plugins/platforms/drm/drm_backend.cpp:305 #22 0x00007f14517c042c in KWin::DrmBackend::handleUdevEvent() (this=0x559519347920) at ./src/plugins/platforms/drm/drm_backend.cpp:280 device = std::unique_ptr<KWin::UdevDevice> = {get() = 0x55951bba3880} drm = true #23 0x00007f145857f6fe in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffc2ec35dd0, r=0x559519347920, this=0x559519376c60) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398 obj = std::unique_ptr<QtPrivate::QSlotObjectBase> = {get() = 0x559519376c60} receiver = 0x559519347920 td = <optimized out> receiverInSameThread = <optimized out> senderData = {previous = 0x0, receiver = 0x559519347920, sender = 0x55951936c180, signal = 3} c = 0x5595193761f0 connections = {d = 0x559519376cf0} list = <optimized out> inSenderThread = true highestConnectionId = 1 signalVector = 0x559519372f70 currentThreadId = 0x7f1452cf8300 sp = <optimized out> signal_spy_set = 0x0 empty_argv = {0x0} senderDeleted = false #24 doActivate<false>(QObject*, int, void**) (sender=0x55951936c180, signal_index=3, argv=0x7ffc2ec35dd0) at kernel/qobject.cpp:3886 obj = std::unique_ptr<QtPrivate::QSlotObjectBase> = {get() = 0x559519376c60} receiver = 0x559519347920 td = <optimized out> receiverInSameThread = <optimized out> senderData = {previous = 0x0, receiver = 0x559519347920, sender = 0x55951936c180, signal = 3} c = 0x5595193761f0 connections = {d = 0x559519376cf0} list = <optimized out> inSenderThread = true highestConnectionId = 1 signalVector = 0x559519372f70 currentThreadId = 0x7f1452cf8300 sp = <optimized out> signal_spy_set = 0x0 empty_argv = {0x0} senderDeleted = false #25 0x00007f1458578ac7 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x55951936c180, m=m@entry=0x7f14587e2b40 <QSocketNotifier::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffc2ec35dd0) at kernel/qobject.cpp:3946 #26 0x00007f1458583773 in QSocketNotifier::activated(QSocketDescriptor, QSocketNotifier::Type, QSocketNotifier::QPrivateSignal) (this=this@entry=0x55951936c180, _t1=..., _t2=<optimized out>, _t3=...) at .moc/moc_qsocketnotifier.cpp:178 _a = {0x0, 0x7ffc2ec35dcc, 0x7ffc2ec35dc8, 0x7ffc2ec35dc7} #27 0x00007f1458583f13 in QSocketNotifier::event(QEvent*) (this=0x55951936c180, e=0x7ffc2ec360a0) at kernel/qsocketnotifier.cpp:302 d = 0x559519376270 #28 0x00007f14593c1dc3 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x559519305300, receiver=receiver@entry=0x55951936c180, e=e@entry=0x7ffc2ec360a0) at kernel/qapplication.cpp:3632 consumed = false filtered = false #29 0x00007f14593cabb8 in QApplication::notify(QObject*, QEvent*) (this=0x7ffc2ec364b0, receiver=0x55951936c180, e=0x7ffc2ec360a0) at kernel/qapplication.cpp:3156 w = <optimized out> wheel = <optimized out> spontaneous = <optimized out> phase = <optimized out> d = 0x559519305300 res = false #30 0x00007f14585486da in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x55951936c180, event=0x7ffc2ec360a0) at ../../include/QtCore/5.15.2/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:325 selfRequired = true result = false cbdata = {0x55951936c180, 0x7ffc2ec360a0, 0x7ffc2ec3604f} d = <optimized out> threadData = 0x5595192dd520 scopeLevelCounter = {threadData = 0x5595192dd520} #31 0x00007f14585a020b in QEventDispatcherUNIXPrivate::activateSocketNotifiers() (this=0x5595193139c0) at kernel/qeventdispatcher_unix.cpp:304 notifier = 0x55951936c180 n_activated = 0 event = {_vptr.QEvent = 0x7f14587e24b0 <vtable for QEvent+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f1458713fa0 <qt_meta_stringdata_QEvent>, data = 0x7f14587139e0 <qt_meta_data_QEvent>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}, d = 0x0, t = 50, posted = 0, spont = 0, m_accept = 1, reserved = 806} #32 0x00007f14585a066b in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=<optimized out>, flags=...) at kernel/qeventdispatcher_unix.cpp:511 d = 0x5595193139c0 threadData = <optimized out> include_timers = <optimized out> canWait = <optimized out> tm = <optimized out> wait_tm = {tv_sec = 0, tv_nsec = 0} nevents = 0 #33 0x00005595175e48d1 in () #34 0x00007f14585471eb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffc2ec36230, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141 d = 0x559519321c70 threadData = <optimized out> locker = {val = 94098861019000} app = <optimized out> #35 0x00007f145854f394 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121 threadData = 0x5595192dd520 eventLoop = {<QObject> = {_vptr.QObject = 0x7f14587e2268 <vtable for QEventLoop+16>, static staticMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f1458718640 <qt_meta_stringdata_QObject>, data = 0x7f1458718520 <qt_meta_data_QObject>, static_metacall = 0x7f145857dd40 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}, d_ptr = {d = 0x559519321c70}, static staticQtMetaObject = {d = {superdata = {direct = 0x0}, stringdata = 0x7f145871b5e0 <qt_meta_stringdata_Qt>, data = 0x7f1458718760 <qt_meta_data_Qt>, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = {direct = 0x7f14587d9ae0 <QObject::staticMetaObject>}, stringdata = 0x7f1458712e60 <qt_meta_stringdata_QEventLoop>, data = 0x7f1458712e00 <qt_meta_data_QEventLoop>, static_metacall = 0x7f1458546f00 <QEventLoop::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0, extradata = 0x0}}} returnCode = <optimized out> #36 0x0000559517571281 in () #37 0x00007f1457ccd0b3 in __libc_start_main (main=0x55951756f370, argc=5, argv=0x7ffc2ec36768, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffc2ec36758) at ../csu/libc-start.c:308 result = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {94098830543248, -7734513140434757822, 94098830072576, 140721093044064, 0, 0, 7732998052311177026, 7674647093239453506}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x5, 0x7ffc2ec36768}, data = {prev = 0x0, cleanup = 0x0, canceltype = 5}}} not_first_call = <optimized out> #38 0x0000559517571b2e in () quit