Bug 491964 - kwin crashes in KWin::centerBuffer() when switching to fullscreen puyo puyo tetris 2
Summary: kwin crashes in KWin::centerBuffer() when switching to fullscreen puyo puyo t...
Status: RESOLVED WORKSFORME
Alias: None
Product: kwin
Classification: Plasma
Component: generic-crash (show other bugs)
Version: git master
Platform: Other Linux
: NOR crash
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-08-21 02:17 UTC by Janet Blackquill
Modified: 2024-10-03 03:47 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Janet Blackquill 2024-08-21 02:17:02 UTC
(gdb) bt
#0  0x00007f29ead414a4 in __pthread_kill_implementation () at /lib64/libc.so.6
#1  0x00007f29eace8c4e in raise () at /lib64/libc.so.6
#2  0x00007f29eacd0902 in abort () at /lib64/libc.so.6
#3  0x00007f29eb2d9631 in qAbort () at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/global/qglobal.cpp:161
#4  0x00007f29eb327e27 in qt_message_fatal<QString&> (context=<optimized out>, message=...) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/global/qlogging.cpp:2025
#5  qt_message(QtMsgType, const QMessageLogContext &, const char *, typedef __va_list_tag __va_list_tag *)
    (msgType=msgType@entry=QtFatalMsg, context=..., msg=msg@entry=0x7f29eb6c8df0 "ASSERT: \"%s\" in file %s, line %d", ap=ap@entry=0x7ffe5a545ae0) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/global/qlogging.cpp:374
#6  0x00007f29eb2da4d3 in QMessageLogger::fatal (this=this@entry=0x7ffe5a545bc8, msg=msg@entry=0x7f29eb6c8df0 "ASSERT: \"%s\" in file %s, line %d") at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/global/qlogging.cpp:889
#7  0x00007f29eb2d9587 in qt_assert (assertion=<optimized out>, file=<optimized out>, line=<optimized out>) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/global/qassert.cpp:68
#8  0x00007f29eef84f10 in operator/ (s=..., c=0) at /usr/include/qt6/QtCore/qsize.h:264
#9  0x00007f29eef7fd65 in KWin::centerBuffer (bufferSize=..., modeSize=...) at /home/jblackquill/KDE/Sources/kwin/src/compositor_wayland.cpp:270
#10 0x00007f29eef7f4bf in KWin::WaylandCompositor::composite (this=0x2668230, renderLoop=0x32853b0) at /home/jblackquill/KDE/Sources/kwin/src/compositor_wayland.cpp:349
#11 0x00007f29eef75651 in KWin::Compositor::handleFrameRequested (this=0x2668230, renderLoop=0x32853b0) at /home/jblackquill/KDE/Sources/kwin/src/compositor.cpp:137
#12 0x00007f29eef7b5ef in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<KWin::RenderLoop*>, void, void (KWin::Compositor::*)(KWin::RenderLoop*)>::call
    (f=(void (KWin::Compositor::*)(KWin::Compositor * const, KWin::RenderLoop *)) 0x7f29eef75630 <KWin::Compositor::handleFrameRequested(KWin::RenderLoop*)>, o=0x2668230, arg=0x7ffe5a5464e0)
    at /usr/include/qt6/QtCore/qobjectdefs_impl.h:145
#13 0x00007f29eef7b53d in QtPrivate::FunctionPointer<void (KWin::Compositor::*)(KWin::RenderLoop*)>::call<QtPrivate::List<KWin::RenderLoop*>, void>
    (f=(void (KWin::Compositor::*)(KWin::Compositor * const, KWin::RenderLoop *)) 0x7f29eef75630 <KWin::Compositor::handleFrameRequested(KWin::RenderLoop*)>, o=0x2668230, arg=0x7ffe5a5464e0)
    at /usr/include/qt6/QtCore/qobjectdefs_impl.h:182
#14 0x00007f29eef7b465 in QtPrivate::QCallableObject<void (KWin::Compositor::*)(KWin::RenderLoop*), QtPrivate::List<KWin::RenderLoop*>, void>::impl (which=1, this_=0x3368cb0, r=0x2668230, a=0x7ffe5a5464e0, ret=0x0)
    at /usr/include/qt6/QtCore/qobjectdefs_impl.h:553
#15 0x00007f29eb40a872 in QtPrivate::QSlotObjectBase::call (this=0x3368cb0, r=<optimized out>, a=0x7ffe5a5464e0) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/kernel/qobjectdefs_impl.h:469
#16 doActivate<false> (sender=0x32853b0, signal_index=5, argv=0x7ffe5a5464e0) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/kernel/qobject.cpp:4086
#17 0x00007f29eefcae59 in KWin::RenderLoop::frameRequested (this=0x32853b0, _t1=0x32853b0) at src/kwin_autogen/include/moc_renderloop.cpp:208
#18 0x00007f29eefcae06 in KWin::RenderLoopPrivate::dispatch (this=0x26f9160) at /home/jblackquill/KDE/Sources/kwin/src/core/renderloop.cpp:185
#19 0x00007f29eefcbcc8 in KWin::RenderLoopPrivate::RenderLoopPrivate(KWin::RenderLoop*, KWin::Output*)::$_0::operator()() const (this=0x3285500) at /home/jblackquill/KDE/Sources/kwin/src/core/renderloop.cpp:35
#20 0x00007f29eefcbc99 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, KWin::RenderLoopPrivate::RenderLoopPrivate(KWin::RenderLoop*, KWin::Output*)::$_0>::call(KWin::RenderLoopPrivate::RenderLoopPrivate(KWin::RenderLoop*, KWin::Output*)::$_0&, void**) (f=..., arg=0x7ffe5a5466f0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:137
#21 0x00007f29eefcbc61 in QtPrivate::FunctorCallable<KWin::RenderLoopPrivate::RenderLoopPrivate(KWin::RenderLoop*, KWin::Output*)::$_0>::call<QtPrivate::List<>, void>(KWin::RenderLoopPrivate::RenderLoopPrivate(KWin::RenderLoop*, KWin::Output*)::$_0&, void*, void**) (f=..., arg=0x7ffe5a5466f0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:345
#22 0x00007f29eefcbbfe in QtPrivate::QCallableObject<KWin::RenderLoopPrivate::RenderLoopPrivate(KWin::RenderLoop*, KWin::Output*)::$_0, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*)
    (which=1, this_=0x32854f0, r=0x32853b0, a=0x7ffe5a5466f0, ret=0x0) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:555
#23 0x00007f29eb40a872 in QtPrivate::QSlotObjectBase::call (this=0x32854f0, r=<optimized out>, a=0x7ffe5a5466f0) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/kernel/qobjectdefs_impl.h:469
#24 doActivate<false> (sender=0x26f93a0, signal_index=3, argv=0x7ffe5a5466f0) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/kernel/qobject.cpp:4086
#25 0x00007f29eb400b47 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7f29eb899100, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffe5a5466f0)
    at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/kernel/qobject.cpp:4146
#26 0x00007f29eb419c3d in QTimer::timeout (this=<optimized out>, _t1=...) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/redhat-linux-build/src/corelib/Core_autogen/include/moc_qtimer.cpp:224
#27 0x00007f29eb3fbcdf in QObject::event (this=0x26f93a0, e=0x7ffe5a5468a0) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/kernel/qobject.cpp:1482
#28 0x00007f29ec8a6218 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x26f93a0, e=0x7ffe5a5468a0) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/widgets/kernel/qapplication.cpp:3287
#29 0x00007f29eb3a4dc8 in QCoreApplication::notifyInternal2 (receiver=0x26f93a0, event=0x7ffe5a5468a0) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/kernel/qcoreapplication.cpp:1142
#30 0x00007f29eb3a502d in QCoreApplication::sendEvent (receiver=<optimized out>, event=<optimized out>) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/kernel/qcoreapplication.cpp:1583
#31 0x00007f29eb560a47 in QTimerInfoList::activateTimers (this=this@entry=0x22909a8) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/kernel/qtimerinfo_unix.cpp:434
#32 0x00007f29eb562dc0 in QEventDispatcherUNIXPrivate::activateTimers (this=this@entry=0x22908d0) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/kernel/qeventdispatcher_unix.cpp:196
#33 0x00007f29eb56501b in QEventDispatcherUNIX::processEvents (this=<optimized out>, flags=...) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/kernel/qeventdispatcher_unix.cpp:472
#34 0x00007f29ec06c392 in QUnixEventDispatcherQPA::processEvents (this=<optimized out>, flags=...) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/gui/platform/unix/qunixeventdispatcher.cpp:27
#35 0x00007f29eb3b1b03 in QEventLoop::exec (this=this@entry=0x7ffe5a546a70, flags=..., flags@entry=...) at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/global/qflags.h:34
#36 0x00007f29eb3ad9bc in QCoreApplication::exec () at /usr/src/debug/qt6-qtbase-6.7.2-3.fc40.x86_64/src/corelib/global/qflags.h:74
#37 0x0000000000388d2b in main (argc=14, argv=0x7ffe5a548558) at /home/jblackquill/KDE/Sources/kwin/src/main_wayland.cpp:634
(gdb)
Comment 1 Bug Janitor Service 2024-08-28 10:50:55 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/6324
Comment 2 Vlad Zahorodnii 2024-09-03 12:45:07 UTC
Please check whether the MR above fixes the crash
Comment 3 Vlad Zahorodnii 2024-09-03 13:17:53 UTC
Git commit 8443da3083d79899097f36a3f93f8f88cc79001d by Vlad Zahorodnii.
Committed on 03/09/2024 at 12:44.
Pushed by vladz into branch 'master'.

scene: Fix attempting to scanout empty surfaces

X11 windows might be mapped but temporarily have missing wl_surface or
the wl_surface can be temporarily unmapped.

M  +5    -2    src/scene/workspacescene.cpp

https://invent.kde.org/plasma/kwin/-/commit/8443da3083d79899097f36a3f93f8f88cc79001d
Comment 4 Bug Janitor Service 2024-09-18 03:46:58 UTC
🐛🧹 ⚠️ This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information, then set the bug status to REPORTED. If there is no change for at least 30 days, it will be automatically closed as RESOLVED WORKSFORME.

For more information about our bug triaging procedures, please read https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging.

Thank you for helping us make KDE software even better for everyone!
Comment 5 Bug Janitor Service 2024-10-03 03:47:30 UTC
🐛🧹 This bug has been in NEEDSINFO status with no change for at least 30 days. Closing as RESOLVED WORKSFORME.