https://bugs.kde.org/show_bug.cgi?id=511880

            Bug ID: 511880
           Summary: Kwin-wayland randomly crashes
    Classification: Plasma
           Product: kwin
      Version First unspecified
       Reported In:
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: generic-crash
          Assignee: [email protected]
          Reporter: [email protected]
  Target Milestone: ---

SUMMARY

Kwin-wayland randomly crashes.

STEPS TO REPRODUCE

I cannot reliably reproduce the issue. The crash happens about once in a day or
two. It usually happens when I open some program (often, but not limited to,
Firefox), but it happened also when switching focus to another program. I could
not find any reliable pattern.

OBSERVED RESULT

The screen goes black for a while, then everything returns. If Firefox was
running, it crashes and instead of it I see only crash reporting dialog.
Controlling screen backlight does not work until system restart. Other programs
seem to be unaffected.

EXPECTED RESULT

Not crashing.

SOFTWARE/OS VERSIONS

Operating System: Garuda Linux
KDE Plasma Version: 6.5.2
KDE Frameworks Version: 6.19.0
Qt Version: 6.10.0
Kernel Version: 6.17.7-zen1-1-zen (64-bit)
Graphics Platform: Wayland
Processors: 16 × Intel® Core™ Ultra 9 285H
Memory: 32 GiB of RAM (30.9 GiB usable)
Graphics Processor: Intel® Graphics

ADDITIONAL INFORMATION

I have managed to get stack-trace by installing `debuginfod` and running
`oredumpctl dump 4905 --output /tmp/dump.core` and `gdb /usr/bin/kwin_wayland
/tmp/dump.core`:

```
#0  0x00007f75320bbc5e in QQmlData::markAsDeleted (o=o@entry=0x55c2edfbe1a0)
at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/qml/qqmlengine.cpp:384
#1  0x00007f75320bce32 in QQmlPrivate::qdeclarativeelement_destructor
(o=o@entry=0x55c2edfbe1a0)
at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/qml/qqmlengine.cpp:242
#2  0x00007f753283aa0a in QQmlPrivate::QQmlElement<QQuickItem>::~QQmlElement
(this=<optimized out>,
this=<optimized out>) at
/usr/src/debug/qt6-declarative/qtdeclarative/src/qml/qml/qqmlprivate.h:104
#3  QQmlPrivate::QQmlElement<QQuickItem>::~QQmlElement (this=<optimized out>,
this=<optimized out>)
at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/qml/qqmlprivate.h:105
#4  0x00007f74f9d9df99 in std::default_delete<QQuickItem>::operator()
(this=<optimized out>,
__ptr=<optimized out>) at /usr/include/c++/15.2.1/bits/unique_ptr.h:87
#5  std::__uniq_ptr_impl<QQuickItem, std::default_delete<QQuickItem> >::reset
(this=0x55c2ed7acb70,
__p=0x0) at /usr/include/c++/15.2.1/bits/unique_ptr.h:205
#6  std::unique_ptr<QQuickItem, std::default_delete<QQuickItem> >::reset
(this=0x55c2ed7acb70, __p=0x0)
at /usr/include/c++/15.2.1/bits/unique_ptr.h:512
#7  Aurorae::Decoration::~Decoration (this=<optimized out>, this=<optimized
out>)
at /usr/src/debug/aurorae/aurorae-6.5.2/src/aurorae.cpp:233
#8  0x00007f74f9d9e215 in Aurorae::Decoration::~Decoration (this=<optimized
out>, this=<optimized out>)
at /usr/src/debug/aurorae/aurorae-6.5.2/src/aurorae.cpp:237
#9  0x00007f7532d754aa in
std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release (
this=0x55c2ee5e3f00) at /usr/include/c++/15.2.1/bits/shared_ptr_base.h:345
#10 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release
(this=0x55c2ee5e3f00)
at /usr/include/c++/15.2.1/bits/shared_ptr_base.h:316
#11 0x00007f7532fed2aa in
std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count (
this=<optimized out>, this=<optimized out>) at
/usr/include/c++/15.2.1/bits/shared_ptr_base.h:1069
#12 std::__shared_ptr<KDecoration3::Decoration,
(__gnu_cxx::_Lock_policy)2>::~__shared_ptr (
this=<optimized out>, this=<optimized out>) at
/usr/include/c++/15.2.1/bits/shared_ptr_base.h:1531
#13 std::shared_ptr<KDecoration3::Decoration>::~shared_ptr (this=<optimized
out>, this=<optimized out>)
at /usr/include/c++/15.2.1/bits/shared_ptr.h:175
#14 KWin::Window::{unnamed type#2}::~Window() (this=<optimized out>,
this=<optimized out>)
at /usr/src/debug/kwin/kwin-6.5.2/src/window.h:1864
#15 KWin::Window::~Window (this=<optimized out>, this=<optimized out>)
at /usr/src/debug/kwin/kwin-6.5.2/src/window.cpp:104
#16 0x00007f7533031865 in KWin::XdgToplevelWindow::~XdgToplevelWindow
(this=<optimized out>,
this=<optimized out>) at
/usr/src/debug/kwin/kwin-6.5.2/src/xdgshellwindow.cpp:512
#17 0x00007f7532e04cae in KWin::EffectWindowDeletedRef::~EffectWindowDeletedRef
(this=<optimized out>,
this=<optimized out>) at
/usr/src/debug/kwin/kwin-6.5.2/src/effect/effectwindow.h:872
#18 std::destroy_at<KWin::EffectWindowDeletedRef> (__location=0x55c2ee088af0)
at /usr/include/c++/15.2.1/bits/stl_construct.h:88
#19 std::_Destroy<KWin::EffectWindowDeletedRef> (__pointer=0x55c2ee088af0)
at /usr/include/c++/15.2.1/bits/stl_construct.h:164
#20 std::_Destroy<KWin::EffectWindowDeletedRef*> (__first=0x55c2ee088af0,
__last=0x55c2ee088af8)
at /usr/include/c++/15.2.1/bits/stl_construct.h:212
#21 std::_Destroy<KWin::EffectWindowDeletedRef*, KWin::EffectWindowDeletedRef>
(
__first=0x55c2ee088af0, __last=0x55c2ee088af8) at
/usr/include/c++/15.2.1/bits/alloc_traits.h:1045
#22 std::vector<KWin::EffectWindowDeletedRef,
std::allocator<KWin::EffectWindowDeletedRef> >::~vector (
this=<optimized out>, this=<optimized out>) at
/usr/include/c++/15.2.1/bits/stl_vector.h:802
#23 KWin::AnimationEffect::postPaintScreen (this=<optimized out>)
at /usr/src/debug/kwin/kwin-6.5.2/src/effect/animationeffect.cpp:711
#24 0x00007f7532e09b0c in KWin::EffectsHandler::postPaintScreen
(this=0x55c2ebd272f0)
at /usr/src/debug/kwin/kwin-6.5.2/src/effect/effecthandler.cpp:379
#25 0x00007f7532e04c88 in KWin::AnimationEffect::postPaintScreen
(this=<optimized out>)
at /usr/src/debug/kwin/kwin-6.5.2/src/effect/animationeffect.cpp:710
#26 0x00007f7532e09b0c in KWin::EffectsHandler::postPaintScreen
(this=0x55c2ebd272f0)
at /usr/src/debug/kwin/kwin-6.5.2/src/effect/effecthandler.cpp:379
#27 0x00007f7532e09b0c in KWin::EffectsHandler::postPaintScreen
(this=0x55c2ebd272f0)
at /usr/src/debug/kwin/kwin-6.5.2/src/effect/effecthandler.cpp:379
#28 0x00007f7532f5302a in KWin::WorkspaceScene::postPaint (this=0x7f7524017d50)
at /usr/src/debug/kwin/kwin-6.5.2/src/scene/workspacescene.cpp:590
#29 0x00007f7532d8d3f9 in KWin::Compositor::composite (this=<optimized out>,
renderLoop=<optimized out>) at
/usr/src/debug/kwin/kwin-6.5.2/src/compositor.cpp:918
#30 0x00007f75305d716f in QtPrivate::QSlotObjectBase::call (this=<optimized
out>, r=<optimized out>,
a=<optimized out>, this=<optimized out>, r=<optimized out>, a=<optimized out>)
at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobjectdefs_impl.h:461
#31 doActivate<false> (sender=<optimized out>, signal_index=<optimized out>,
argv=<optimized out>)
at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4255
#32 0x00007f7532db4d5b in QMetaObject::activate<void, KWin::RenderLoop*>
(sender=<optimized out>,
mo=<optimized out>, local_signal_index=2, ret=0x0) at
/usr/include/qt6/QtCore/qobjectdefs.h:319
#33 KWin::RenderLoop::frameRequested (this=<optimized out>, _t1=<optimized
out>)
at /usr/src/debug/kwin/build/src/kwin_autogen/include/moc_renderloop.cpp:171
#34 0x00007f75305c44f6 in QObject::event (this=<optimized out>, e=<optimized
out>)
at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:1386
#35 0x00007f75317020a0 in QApplicationPrivate::notify_helper (this=<optimized
out>,
receiver=0x55c2eae90890, e=0x7ffd8aa394f0)
at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qapplication.cpp:3307
#36 0x00007f753056a6c8 in QCoreApplication::notifyInternal2
(receiver=0x55c2eae90890,
event=0x7ffd8aa394f0)
at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1109
#37 0x00007f753072c6af in QCoreApplication::sendEvent (receiver=<optimized
out>, event=0x7ffd8aa394f0)
at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1549
#38 QTimerInfoList::activateTimers (this=this@entry=0x55c2ea9b3098)
at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qtimerinfo_unix.cpp:426
#39 0x00007f753072f901 in QEventDispatcherUNIXPrivate::activateTimers
(this=0x55c2ea9b2fc0)
at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_unix.cpp:221
#40 QEventDispatcherUNIX::processEvents (this=<optimized out>, flags=...,
flags@entry=...)
at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_unix.cpp:503
#41 0x00007f7531334773 in QUnixEventDispatcherQPA::processEvents
(this=<optimized out>, flags=...)
at
/usr/src/debug/qt6-base/qtbase/src/gui/platform/unix/qunixeventdispatcher.cpp:27
#42 0x00007f7530575a86 in QEventLoop::processEvents (this=0x7ffd8aa396d0,
flags=...)
at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:104
#43 QEventLoop::exec (this=0x7ffd8aa396d0, flags=...)
at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:186
#44 0x00007f753056f171 in QCoreApplication::exec ()
at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1452
#45 0x00007f75316fd31a in QApplication::exec ()
at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qapplication.cpp:2574
#46 0x000055c2ac12b9f4 in main (argc=<optimized out>, argv=<optimized out>)
at /usr/src/debug/kwin/kwin-6.5.2/src/main_wayland.cpp:635
```

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to