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

            Bug ID: 494226
           Summary: Desktop Cube cause KWin wayland to Crash
    Classification: Plasma
           Product: kwin
           Version: 6.1.5
          Platform: Arch Linux
                OS: Linux
            Status: REPORTED
          Severity: crash
          Priority: NOR
         Component: effects-window-management
          Assignee: kwin-bugs-n...@kde.org
          Reporter: ye.jingc...@gmail.com
  Target Milestone: ---

SUMMARY
Pressing Super+C to use the cube effect will trigger an instant crash, while
the normal Overview (Super+W) is working normally.

STEPS TO REPRODUCE
1. Add 3 or more virtual desktop
2. Press Super+C

OBSERVED RESULT
KWin Crashed and relaunched automatically.

EXPECTED RESULT
Cube effect should show up.

SOFTWARE/OS VERSIONS
Operating System: Arch Linux 
KDE Plasma Version: 6.1.5
KDE Frameworks Version: 6.6.0
Qt Version: 6.7.3
Kernel Version: 6.11.2-arch1-1 (64-bit)
Graphics Platform: Wayland
Processors: 16 × AMD Ryzen 7 PRO 6850HS with Radeon Graphics
Memory: 14.9 GiB of RAM
Graphics Processor: AMD Radeon Graphics

mesa 1:24.2.4-1

ADDITIONAL INFORMATION
Backtrace:

[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
Core was generated by `/usr/bin/kwin_wayland --wayland-fd 7 --socket wayland-0
--xwayland-fd 8 --xwayl'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  std::__atomic_base<int>::load (this=<optimized out>, __m=<optimized out>,
this=<optimized out>, __m=<optimized out>) at
/usr/include/c++/14.2.1/bits/atomic_base.h:499
499             __glibcxx_assert(__b != memory_order_acq_rel);
[Current thread is 1 (Thread 0x78302d3cc0c0 (LWP 1271))]
(gdb) bt
#0  std::__atomic_base<int>::load (this=<optimized out>, __m=<optimized out>,
this=<optimized out>, __m=<optimized out>) at
/usr/include/c++/14.2.1/bits/atomic_base.h:499
#1  QAtomicOps<int>::loadRelaxed<int> (_q_value=..., _q_value=...) at
/usr/include/qt6/QtCore/qatomic_cxx11.h:202
#2  QBasicAtomicInteger<int>::loadRelaxed (this=<optimized out>,
this=<optimized out>) at /usr/include/qt6/QtCore/qbasicatomic.h:36
#3  QWeakPointer<QObject>::internalData (this=0x5f02cc8dd590) at
/usr/include/qt6/QtCore/qsharedpointer_impl.h:752
#4  QPointer<QSGContext>::data (this=0x5f02cc8dd590) at
/usr/include/qt6/QtCore/qpointer.h:74
#5  QPointer<QSGContext>::operator QSGContext* (this=0x5f02cc8dd590) at
/usr/include/qt6/QtCore/qpointer.h:82
#6  QSGRenderContext::sceneGraphContext (this=0x5f02cc8dd580) at
/usr/include/qt6/QtQuick/6.7.3/QtQuick/private/qsgcontext_p.h:146
#7  operator() (__closure=0x5f02cc92bcd0) at
/usr/src/debug/qt6-quick3d/qtquick3d/src/quick3d/qquick3dtexture.cpp:1275
#8  QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void,
QQuick3DTexture::updateSpatialNode(QSSGRenderGraphObject*)::<lambda()> >::call
(f=..., arg=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:137
#9 
QtPrivate::FunctorCallable<QQuick3DTexture::updateSpatialNode(QSSGRenderGraphObject*)::<lambda()>
>::call<QtPrivate::List<>, void> (f=..., arg=<optimized out>) at
/usr/include/qt6/QtCore/qobjectdefs_impl.h:345
#10
QtPrivate::QCallableObject<QQuick3DTexture::updateSpatialNode(QSSGRenderGraphObject*)::<lambda()>,
QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *,
void **, bool *) (which=<optimized out>,
    this_=0x5f02cc92bcc0, r=<optimized out>, a=<optimized out>, ret=<optimized
out>) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:555
#11 0x000078303e5a3457 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:469
#12 doActivate<false> (sender=<optimized out>, signal_index=<optimized out>,
argv=<optimized out>) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4086
#13 0x000078304065305f in QQuickWindow::afterSynchronizing (this=<optimized
out>) at
/usr/src/debug/qt6-declarative/build/src/quick/Quick_autogen/include/moc_qquickwindow.cpp:619
#14 QQuickWindowPrivate::syncSceneGraph (this=<optimized out>) at
/usr/src/debug/qt6-declarative/qtdeclarative/src/quick/items/qquickwindow.cpp:581
#15 0x00007830405e1aea in QQuickRenderControl::sync (this=<optimized out>) at
/usr/src/debug/qt6-declarative/qtdeclarative/src/quick/items/qquickrendercontrol.cpp:378
#16 0x0000783040dfb1bc in KWin::OffscreenQuickView::update
(this=0x5f02ca7fd800) at
/usr/src/debug/kwin/kwin-6.1.5/src/effect/offscreenquickview.cpp:244
#17 KWin::OffscreenQuickView::update (this=0x5f02ca7fd800) at
/usr/src/debug/kwin/kwin-6.1.5/src/effect/offscreenquickview.cpp:200
#18 0x0000783040dfe7e4 in KWin::QuickSceneEffect::paintScreen (this=<optimized
out>, renderTarget=..., viewport=..., mask=<optimized out>, region=...,
screen=0x5f02cb4ba860) at /usr/include/c++/14.2.1/bits/unique_ptr.h:193
#19 0x0000783040dd2a76 in KWin::EffectsHandler::paintScreen
(this=0x5f02cb3f4980, renderTarget=..., viewport=..., mask=<optimized out>,
region=..., screen=<optimized out>)
    at /usr/src/debug/kwin/kwin-6.1.5/src/effect/effecthandler.cpp:318
#20 0x0000783040ed1468 in KWin::WorkspaceScene::paint (this=0x5f02cb38b2a0,
renderTarget=..., region=...) at
/usr/src/debug/kwin/kwin-6.1.5/src/scene/workspacescene.cpp:404
#21 0x0000783040ec29a5 in KWin::SceneDelegate::paint (this=<optimized out>,
renderTarget=..., region=...) at
/usr/src/debug/kwin/kwin-6.1.5/src/scene/scene.cpp:44
#22 0x0000783040d65e97 in KWin::Compositor::paintPass (this=0x5f02ca70e930,
layer=0x5f02ca8b6d80, renderTarget=..., region=...) at
/usr/src/debug/kwin/kwin-6.1.5/src/compositor.cpp:182
#23 0x0000783040d6d700 in KWin::WaylandCompositor::composite
(this=0x5f02ca70e930, renderLoop=<optimized out>) at
/usr/src/debug/kwin/kwin-6.1.5/src/compositor_wayland.cpp:338
#24 0x000078303e5a3457 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:469
#25 doActivate<false> (sender=<optimized out>, signal_index=<optimized out>,
argv=<optimized out>) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4086
#26 0x0000783040d7b575 in KWin::RenderLoop::frameRequested (this=<optimized
out>, _t1=<optimized out>) at
/usr/src/debug/kwin/build/src/kwin_autogen/include/moc_renderloop.cpp:208
#27 0x0000783040d81e73 in KWin::RenderLoopPrivate::dispatch
(this=0x5f02ca7e9240) at
/usr/src/debug/kwin/kwin-6.1.5/src/core/renderloop.cpp:185
#28 0x000078303e5a3457 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:469
#29 doActivate<false> (sender=<optimized out>, signal_index=<optimized out>,
argv=<optimized out>) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4086
#30 0x000078303e5ab6c5 in QTimer::timeout (this=0x5f02ca7e9480, _t1=...) at
/usr/src/debug/qt6-base/build/src/corelib/Core_autogen/include/moc_qtimer.cpp:224
#31 QTimer::timerEvent (e=<optimized out>, this=0x5f02ca7e9480) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qtimer.cpp:258
#32 QTimer::timerEvent (this=0x5f02ca7e9480, e=<optimized out>) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qtimer.cpp:252
#33 0x000078303e58d8f9 in QObject::event (this=0x5f02ca7e9480,
e=0x7fff7104e5c0) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:1427
#34 0x000078303f6fd9cc in QApplicationPrivate::notify_helper (this=<optimized
out>, receiver=0x5f02ca7e9480, e=0x7fff7104e5c0) at
/usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qapplication.cpp:3287
#35 0x000078303e545be8 in QCoreApplication::notifyInternal2
(receiver=0x5f02ca7e9480, event=0x7fff7104e5c0) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1152
#36 0x000078303e6c2f58 in QCoreApplication::sendEvent (receiver=<optimized
out>, event=0x7fff7104e5c0) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1593
#37 QTimerInfoList::activateTimers (this=<optimized out>) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qtimerinfo_unix.cpp:434
#38 0x000078303e6caf28 in QEventDispatcherUNIXPrivate::activateTimers
(this=0x5f02ca31daa0) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_unix.cpp:196
#39 QEventDispatcherUNIX::processEvents (this=<optimized out>, flags=...,
flags@entry=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_unix.cpp:472
#40 0x000078303f005753 in QUnixEventDispatcherQPA::processEvents
(this=<optimized out>, flags=...) at
/usr/src/debug/qt6-base/qtbase/src/gui/platform/unix/qunixeventdispatcher.cpp:27
#41 0x000078303e550106 in QEventLoop::processEvents (this=0x7fff7104e7b0,
flags=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:100
#42 QEventLoop::exec (this=0x7fff7104e7b0, flags=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:182
#43 0x000078303e54a27d in QCoreApplication::exec () at
/usr/src/debug/qt6-base/qtbase/src/corelib/global/qflags.h:74
#44 0x000078303f6f97aa in QApplication::exec () at
/usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qapplication.cpp:2555
#45 0x00005f02acc56035 in main (argc=<optimized out>, argv=<optimized out>) at
/usr/src/debug/kwin/kwin-6.1.5/src/main_wayland.cpp:639
(gdb)

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

Reply via email to