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

            Bug ID: 474933
           Summary: kwin_wayland crashes in
                    KWin::GLFramebuffer::GLFramebuffer
    Classification: Plasma
           Product: kwin
           Version: master
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: kwin-bugs-n...@kde.org
          Reporter: nicolas.fe...@gmx.de
  Target Milestone: ---

While doing nothing in particular

#0  KWin::GLTexture::size() const (this=this@entry=0x0) at
/usr/include/c++/13/bits/unique_ptr.h:199
#1  0x00007fe9b4bc3fc0 in KWin::GLFramebuffer::GLFramebuffer(KWin::GLTexture*,
KWin::GLFramebuffer::Attachment)
    (this=0x1dad1b0, colorAttachment=0x0,
attachment=KWin::GLFramebuffer::NoAttachment) at
/home/nico/kde/src/kwin/src/libkwineffects/glframebuffer.cpp:109
#2  0x00007fe9b4906c3f in std::make_unique<KWin::GLFramebuffer,
KWin::GLTexture*>(KWin::GLTexture*&&) () at
/usr/include/c++/13/bits/unique_ptr.h:1069
#3  KWin::EglSwapchainSlot::EglSwapchainSlot(KWin::EglContext*,
KWin::GraphicsBuffer*) (this=0x2f9a480, context=<optimized out>,
buffer=<optimized out>)
    at
/home/nico/kde/src/kwin/src/platformsupport/scenes/opengl/eglswapchain.cpp:27
#4  0x00007fe9b4906e29 in std::_Construct<KWin::EglSwapchainSlot,
KWin::EglContext*&, KWin::GraphicsBuffer*&>(KWin::EglSwapchainSlot*,
KWin::EglContext*&, KWin::GraphicsBuffer*&) (__p=0x2f9a480) at
/usr/include/c++/13/bits/stl_construct.h:109
#5  std::allocator_traits<std::allocator<void>
>::construct<KWin::EglSwapchainSlot, KWin::EglContext*&,
KWin::GraphicsBuffer*&>(std::allocator<void>&, KWin::EglSwapchainSlot*,
KWin::EglContext*&, KWin::GraphicsBuffer*&) (__p=0x2f9a480) at
/usr/include/c++/13/bits/alloc_traits.h:660
#6  std::_Sp_counted_ptr_inplace<KWin::EglSwapchainSlot, std::allocator<void>,
(__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<KWin::EglContext*&,
KWin::GraphicsBuffer*&>(std::allocator<void>, KWin::EglContext*&,
KWin::GraphicsBuffer*&) (__a=..., this=0x2f9a470) at
/usr/include/c++/13/bits/shared_ptr_base.h:604
#7 
std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<KWin::EglSwapchainSlot,
std::allocator<void>, KWin::EglContext*&,
KWin::GraphicsBuffer*&>(KWin::EglSwapchainSlot*&,
std::_Sp_alloc_shared_tag<std::allocator<void> >, KWin::EglContext*&,
KWin::GraphicsBuffer*&) (__a=..., __p=<optimized out>, this=<optimized out>)
    at /usr/include/c++/13/bits/shared_ptr_base.h:971
#8  std::__shared_ptr<KWin::EglSwapchainSlot,
(__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<void>,
KWin::EglContext*&,
KWin::GraphicsBuffer*&>(std::_Sp_alloc_shared_tag<std::allocator<void> >,
KWin::EglContext*&, KWin::GraphicsBuffer*&) (__tag=..., this=<optimized out>)
at /usr/include/c++/13/bits/shared_ptr_base.h:1712
#9  std::shared_ptr<KWin::EglSwapchainSlot>::shared_ptr<std::allocator<void>,
KWin::EglContext*&,
KWin::GraphicsBuffer*&>(std::_Sp_alloc_shared_tag<std::allocator<void> >,
KWin::EglContext*&, KWin::GraphicsBuffer*&) (__tag=..., this=<optimized out>)
at /usr/include/c++/13/bits/shared_ptr.h:464
#10 std::make_shared<KWin::EglSwapchainSlot, KWin::EglContext*&,
KWin::GraphicsBuffer*&>(KWin::EglContext*&, KWin::GraphicsBuffer*&) ()
    at /usr/include/c++/13/bits/shared_ptr.h:1010
#11 KWin::EglSwapchain::create(KWin::GraphicsBufferAllocator*,
KWin::EglContext*, QSize const&, unsigned int, QList<unsigned long> const&)
    (allocator=0x144da90, context=context@entry=0x2bb2070, size=...,
format=format@entry=808665665, modifiers=...)
    at
/home/nico/kde/src/kwin/src/platformsupport/scenes/opengl/eglswapchain.cpp:139
#12 0x00007fe9b48a3090 in
KWin::EglGbmLayerSurface::createGbmSwapchain(KWin::DrmGpu*, KWin::EglContext*,
QSize const&, unsigned int, QList<unsigned long> const&, bool) const
(this=this@entry=0x3a59d08, gpu=0x128abf0, context=context@entry=0x2bb2070,
size=..., format=format@entry=808665665, modifiers=..., preferLinear=false)
    at /home/nico/kde/src/kwin/src/backends/drm/drm_egl_layer_surface.cpp:382
#13 0x00007fe9b48a4c5f in KWin::EglGbmLayerSurface::createSurface(QSize const&,
unsigned int, QList<unsigned long> const&,
KWin::EglGbmLayerSurface::MultiGpuImportMode) const (this=0x3a59d08, size=...,
format=<optimized out>, modifiers=...,
importMode=importMode@entry=KWin::EglGbmLayerSurface::MultiGpuImportMode::None)
    at /home/nico/kde/src/kwin/src/backends/drm/drm_egl_layer_surface.cpp:340
#14 0x00007fe9b48a5ac3 in operator()(QVector const&,
KWin::EglGbmLayerSurface::MultiGpuImportMode) const
    (__closure=0x7ffcf18852e0, gbmFormats=...,
importMode=importMode@entry=KWin::EglGbmLayerSurface::MultiGpuImportMode::None)
    at /home/nico/kde/usr/include/QtCore/qarraydatapointer.h:413
#15 0x00007fe9b48a5f4a in operator()(QVector&) const
(__closure=__closure@entry=0x7ffcf1885300, formats=...)
    at /home/nico/kde/src/kwin/src/backends/drm/drm_egl_layer_surface.cpp:276
#16 0x00007fe9b48a64c5 in KWin::EglGbmLayerSurface::createSurface(QSize const&,
QMap<unsigned int, QList<unsigned long> > const&) const
    (this=this@entry=0x3a59d08, size=..., formats=...) at
/home/nico/kde/src/kwin/src/backends/drm/drm_egl_layer_surface.cpp:296
#17 0x00007fe9b48a6920 in KWin::EglGbmLayerSurface::checkSurface(QSize const&,
QMap<unsigned int, QList<unsigned long> > const&)
    (this=this@entry=0x3a59d08, size=..., formats=...) at
/home/nico/kde/src/kwin/src/backends/drm/drm_egl_layer_surface.cpp:218
#18 0x00007fe9b48a758a in KWin::EglGbmLayerSurface::renderTestBuffer(QSize
const&, QMap<unsigned int, QList<unsigned long> > const&)
--Type <RET> for more, q to quit, c to continue without paging--c
    (this=this@entry=0x3a59d08, bufferSize=..., formats=...) at
/home/nico/kde/src/kwin/src/backends/drm/drm_egl_layer_surface.cpp:202
#19 0x00007fe9b489f12d in KWin::EglGbmLayer::checkTestBuffer() (this=0x3a59c90)
at /home/nico/kde/src/kwin/src/backends/drm/drm_egl_layer.cpp:79
#20 0x00007fe9b48bd2d7 in
KWin::DrmPipeline::prepareAtomicPresentation(KWin::DrmAtomicCommit*)
(this=this@entry=0x160d8d0, commit=commit@entry=0x1b0ad70)
    at /home/nico/kde/src/kwin/src/backends/drm/drm_pipeline.cpp:229
#21 0x00007fe9b48bda4d in KWin::DrmPipeline::updateCursor() (this=0x160d8d0) at
/home/nico/kde/src/kwin/src/backends/drm/drm_pipeline.cpp:380
#22 0x00007fe9b4665d39 in operator() (__closure=<synthetic pointer>) at
/home/nico/kde/src/kwin/src/compositor_wayland.cpp:316
#23 operator()() const (__closure=__closure@entry=0x7ffcf1885d00) at
/home/nico/kde/src/kwin/src/compositor_wayland.cpp:318
#24 0x00007fe9b4665fb3 in KWin::WaylandCompositor::addOutput(KWin::Output*)
(this=this@entry=0x1556e60, output=0x1820250)
    at /home/nico/kde/src/kwin/src/compositor_wayland.cpp:352
#25 0x00007fe9b46663b8 in KWin::WaylandCompositor::start() (this=0x1556e60) at
/home/nico/kde/src/kwin/src/compositor_wayland.cpp:187
#26 0x00007fe9b4662ba8 in KWin::Compositor::reinitialize() (this=0x1556e60) at
/home/nico/kde/src/kwin/src/compositor.cpp:132
#27 KWin::Compositor::composite(KWin::RenderLoop*) (this=0x1556e60,
renderLoop=<optimized out>) at /home/nico/kde/src/kwin/src/compositor.cpp:153
#28 0x00007fe9b13b5f03 in QtPrivate::QSlotObjectBase::call(QObject*, void**)
(a=0x7ffcf18860c0, r=0x1556e60, this=0x1992080)
    at
/home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:433
#29 doActivate<false>(QObject*, int, void**) (sender=0x1964d80, signal_index=5,
argv=0x7ffcf18860c0)
    at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:4021
#30 0x00007fe9b13adc4f in QMetaObject::activate(QObject*, QMetaObject const*,
int, void**)
    (sender=<optimized out>, m=m@entry=0x7fe9b4b4dc40
<KWin::RenderLoop::staticMetaObject>,
local_signal_index=local_signal_index@entry=2, argv=argv@entry=0x7ffcf18860c0)
at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:4081
#31 0x00007fe9b467b5a2 in KWin::RenderLoop::frameRequested(KWin::RenderLoop*)
(this=<optimized out>, _t1=<optimized out>)
    at
/home/nico/kde/build/kwin/src/kwin_autogen/include/moc_renderloop.cpp:302
#32 0x00007fe9b467b883 in KWin::RenderLoopPrivate::dispatch() (this=0x19660d0)
at /home/nico/kde/src/kwin/src/core/renderloop.cpp:164
#33 0x00007fe9b13b5f03 in QtPrivate::QSlotObjectBase::call(QObject*, void**)
(a=0x7ffcf18861c0, r=0x1964d80, this=0x1962e50)
    at
/home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:433
#34 doActivate<false>(QObject*, int, void**) (sender=0x19660e8, signal_index=3,
argv=0x7ffcf18861c0)
    at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:4021
#35 0x00007fe9b13adc4f in QMetaObject::activate(QObject*, QMetaObject const*,
int, void**)
    (sender=<optimized out>, m=m@entry=0x7fe9b180b160
<QTimer::staticMetaObject>, local_signal_index=local_signal_index@entry=0,
argv=argv@entry=0x7ffcf18861c0)
    at /home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:4081
#36 0x00007fe9b13c3a5a in QTimer::timeout(QTimer::QPrivateSignal)
(this=<optimized out>, _t1=...)
    at
/home/nico/workspace/qt6/qtbase/src/corelib/Core_autogen/include/moc_qtimer.cpp:272
#37 0x00007fe9b13a67df in QObject::event(QEvent*) (this=0x19660e8,
e=0x7ffcf1886310) at
/home/nico/workspace/qt6/qtbase/src/corelib/kernel/qobject.cpp:1459
#38 0x00007fe9b277e951 in QApplicationPrivate::notify_helper(QObject*, QEvent*)
(this=<optimized out>, receiver=0x19660e8, e=0x7ffcf1886310)
    at /home/nico/workspace/qt6/qtbase/src/widgets/kernel/qapplication.cpp:3295
#39 0x00007fe9b1359a78 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
(receiver=0x19660e8, event=0x7ffcf1886310)
    at
/home/nico/workspace/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1119
#40 0x00007fe9b1359bf9 in QCoreApplication::sendEvent(QObject*, QEvent*)
(receiver=<optimized out>, event=<optimized out>)
    at
/home/nico/workspace/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1537
#41 0x00007fe9b14ee101 in QTimerInfoList::activateTimers()
(this=this@entry=0x1235c28) at
/home/nico/workspace/qt6/qtbase/src/corelib/kernel/qtimerinfo_unix.cpp:507
#42 0x00007fe9b14e926c in QEventDispatcherUNIXPrivate::activateTimers()
(this=this@entry=0x1235b50)
    at
/home/nico/workspace/qt6/qtbase/src/corelib/kernel/qeventdispatcher_unix.cpp:213
#43 0x00007fe9b14eb21c in
QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=<optimized out>, flags=...)
    at
/home/nico/workspace/qt6/qtbase/src/corelib/kernel/qeventdispatcher_unix.cpp:482
#44 0x00007fe9b20aae6d in
QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=<optimized out>, flags=...)
    at
/home/nico/workspace/qt6/qtbase/src/gui/platform/unix/qunixeventdispatcher.cpp:27
#45 0x00007fe9b136562b in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(this=this@entry=0x7ffcf18864c0, flags=..., flags@entry=...)
    at /home/nico/workspace/qt6/qtbase/src/corelib/global/qflags.h:34
#46 0x00007fe9b1362032 in QCoreApplication::exec() () at
/home/nico/workspace/qt6/qtbase/src/corelib/global/qflags.h:74
#47 0x00007fe9b1bb033c in QGuiApplication::exec() () at
/home/nico/workspace/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1925
#48 0x00007fe9b277e8c5 in QApplication::exec() () at
/home/nico/workspace/qt6/qtbase/src/widgets/kernel/qapplication.cpp:2574
#49 0x000000000043d4e7 in main(int, char**) (argc=<optimized out>,
argv=<optimized out>) at /home/nico/kde/src/kwin/src/main_wayland.cpp:611

SOFTWARE/OS VERSIONS
KDE Plasma Version: master
KDE Frameworks Version: master
Qt Version: 6.6

ADDITIONAL INFORMATION
kwin commit 99244efa3b64029df021ecf1c97cff6b5a8d5265

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

Reply via email to