Bug 450564 - Kwin_wayland crash in KWin::KscreenEffect::switchState()
Summary: Kwin_wayland crash in KWin::KscreenEffect::switchState()
Status: RESOLVED FIXED
Alias: None
Product: kwin
Classification: Unclassified
Component: wayland-generic (show other bugs)
Version: 5.24.4
Platform: Archlinux Packages Linux
: NOR crash (vote)
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords: wayland
: 450800 (view as bug list)
Depends on:
Blocks:
 
Reported: 2022-02-19 12:29 UTC by Matej Mrenica
Modified: 2022-04-12 19:08 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.24.5


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matej Mrenica 2022-02-19 12:29:44 UTC
SUMMARY
Kwin_wayland crashed while being idle and screen was locked.
BT:

#0  0x00007f7951664144 in xcb_send_request_with_fds64 () at /usr/lib/libxcb.so.1
#1  0x00007f79516646ba in xcb_send_request () at /usr/lib/libxcb.so.1
#2  0x00007f795166b303 in xcb_change_property () at /usr/lib/libxcb.so.1
#3  0x0000560ba78e97d7 in KWin::KscreenEffect::switchState(KWin::KscreenEffect::ScreenState&) (state=..., this=0x560ba95a1fe0)
    at /usr/src/debug/kwin-5.24.1/src/effects/kscreen/kscreen.cpp:214
#4  KWin::KscreenEffect::prePaintScreen(KWin::ScreenPrePaintData&, std::chrono::duration<long, std::ratio<1l, 1000l> >) (this=0x560ba95a1fe0, data=..., presentTime=...)
    at /usr/src/debug/kwin-5.24.1/src/effects/kscreen/kscreen.cpp:108
#5  0x00007f7952e15aa2 in KWin::EffectsHandlerImpl::prePaintScreen(KWin::ScreenPrePaintData&, std::chrono::duration<long, std::ratio<1l, 1000l> >)
    (this=0x560ba8b41040, data=<optimized out>, presentTime=...) at /usr/src/debug/kwin-5.24.1/src/effects.cpp:380
#6  0x00007f7952e848bc in KWin::Scene::paintScreen(QRegion const&, QRegion const&, QRegion*, QRegion*, KWin::RenderLoop*, QMatrix4x4 const&)
    (this=0x560ba873a360, damage=<optimized out>, repaint=..., updateRegion=0x7ffe7060d4f0, validRegion=0x7ffe7060d4e8, renderLoop=<optimized out>, projection=...)
    at /usr/src/debug/kwin-5.24.1/src/scene.cpp:259
#7  0x00007f7952f4af27 in KWin::SceneOpenGL::paint(KWin::AbstractOutput*, QRegion const&, QList<KWin::Toplevel*> const&, KWin::RenderLoop*)
    (this=0x560ba873a360, output=0x560ba874ccc0, damage=..., toplevels=<optimized out>, renderLoop=0x560ba8a6cf50) at /usr/src/debug/kwin-5.24.1/src/scenes/opengl/scene_opengl.cpp:259
#8  0x00007f7952de7814 in KWin::Compositor::composite(KWin::RenderLoop*) (this=0x560ba88ed600, renderLoop=0x560ba8a6cf50) at /usr/src/debug/kwin-5.24.1/src/composite.cpp:633
#9  0x00007f7950d8a9d3 in QtPrivate::QSlotObjectBase::call(QObject*, void**)
    (a=0x7ffe7060d750, r=<optimized out>, this=0x560ba86549e0, this=<optimized out>, r=<optimized out>, a=<optimized out>)
    at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#10 doActivate<false>(QObject*, int, void**) (sender=0x560ba8a6cf50, signal_index=5, argv=0x7ffe7060d750) at kernel/qobject.cpp:3886
#11 0x00007f7952da57b7 in KWin::RenderLoop::frameRequested(KWin::RenderLoop*) (this=<optimized out>, _t1=<optimized out>)
    at /usr/src/debug/build/src/kwin_autogen/EWIEGA46WW/moc_renderloop.cpp:206
#12 0x00007f7952e76eb8 in KWin::RenderLoopPrivate::dispatch() (this=0x560ba8a70c80) at /usr/src/debug/kwin-5.24.1/src/renderloop.cpp:150
#13 0x00007f7950d8a9d3 in QtPrivate::QSlotObjectBase::call(QObject*, void**)
    (a=0x7ffe7060d870, r=<optimized out>, this=0x560ba8a6c810, this=<optimized out>, r=<optimized out>, a=<optimized out>)
    at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#14 doActivate<false>(QObject*, int, void**) (sender=0x560ba8a70c98, signal_index=3, argv=0x7ffe7060d870) at kernel/qobject.cpp:3886
#15 0x00007f7950d8cc0f in QTimer::timeout(QTimer::QPrivateSignal) (this=<optimized out>, _t1=...) at .moc/moc_qtimer.cpp:205
--Type <RET> for more, q to quit, c to continue without paging--
#16 0x00007f7950d7dd56 in QObject::event(QEvent*) (this=0x560ba8a70c98, e=0x7ffe7060da10) at kernel/qobject.cpp:1291
#17 0x00007f79518161a6 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x560ba8a70c98, e=0x7ffe7060da10) at kernel/qapplication.cpp:3632
#18 0x00007f7950d59b9a in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x560ba8a70c98, event=0x7ffe7060da10) at kernel/qcoreapplication.cpp:1064
#19 0x00007f7950da5335 in QTimerInfoList::activateTimers() (this=0x560ba85e69c8) at kernel/qtimerinfo_unix.cpp:643
#20 0x00007f7950da57d2 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=<optimized out>, flags=...) at kernel/qeventdispatcher_unix.cpp:516
#21 0x0000560ba79979e2 in QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
#22 0x00007f7950d51e6b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7ffe7060dbb0, flags=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#23 0x00007f7950d5d5c7 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#24 0x00007f7951128332 in QGuiApplication::exec() () at kernel/qguiapplication.cpp:1867
#25 0x00007f795181452a in QApplication::exec() () at kernel/qapplication.cpp:2824
#26 0x0000560ba78a62da in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/kwin-5.24.1/src/main_wayland.cpp:727
Comment 1 Nicolas Fella 2022-02-24 14:50:50 UTC
*** Bug 450800 has been marked as a duplicate of this bug. ***
Comment 2 Zamundaaa 2022-04-12 18:39:58 UTC
Git commit db3f27336f2172fd70be3411874d9bbeb3db6a24 by Xaver Hugl.
Committed on 12/04/2022 at 18:28.
Pushed by zamundaaa into branch 'master'.

effects/kscreen: don't use xcb on Wayland
FIXED-IN: 5.24.5

M  +7    -5    src/effects/kscreen/kscreen.cpp

https://invent.kde.org/plasma/kwin/commit/db3f27336f2172fd70be3411874d9bbeb3db6a24
Comment 3 Zamundaaa 2022-04-12 19:08:34 UTC
Git commit 7a26f93cb579cf6b1cbc1e32790f93be70013157 by Xaver Hugl.
Committed on 12/04/2022 at 18:56.
Pushed by zamundaaa into branch 'Plasma/5.24'.

effects/kscreen: don't use xcb on Wayland
FIXED-IN: 5.24.5
(cherry picked from commit db3f27336f2172fd70be3411874d9bbeb3db6a24)

M  +6    -6    src/effects/kscreen/kscreen.cpp

https://invent.kde.org/plasma/kwin/commit/7a26f93cb579cf6b1cbc1e32790f93be70013157