Bug 497423 - kwin_wayland crash in screencast plugin
Summary: kwin_wayland crash in screencast plugin
Status: RESOLVED UNMAINTAINED
Alias: None
Product: kwin
Classification: Plasma
Component: screencasting (other bugs)
Version First Reported In: 5.27.5
Platform: Debian stable Linux
: NOR crash
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-12-13 19:20 UTC by lindstrom515
Modified: 2024-12-13 19:33 UTC (History)
0 users

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description lindstrom515 2024-12-13 19:20:16 UTC
SUMMARY
Last few days kwin_wayland has been crashing for me every few hours. Seems to be in the screencast plugin, even though i'm not doing any screencasting or similar. The 3 times it has happened so far i've had firefox running with many tabs opened, but that could be a coincidence.

STEPS TO REPRODUCE
Not sure yet..

OBSERVED RESULT
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.

warning: Section `.reg-xstate/1805' in core file too small.
#0  0x000056157d1695b7 in KWin::ScreenCastStream::buildFormats (this=this@entry=0x56157eeb7a70, fixate=false, buffer=buffer@entry=0x7ffed5e9cab0 "") at /usr/include/c++/12/bits/unique_ptr.h:191
191           pointer    _M_ptr() const noexcept { return std::get<0>(_M_t); }
[Current thread is 1 (Thread 0x7f323a33de80 (LWP 1805))]
(gdb) bt
#0  0x000056157d1695b7 in KWin::ScreenCastStream::buildFormats(bool, char*) (this=this@entry=0x56157eeb7a70, fixate=false, buffer=buffer@entry=0x7ffed5e9cab0 "")
    at /usr/include/c++/12/bits/unique_ptr.h:191
#1  0x000056157d169974 in KWin::ScreenCastStream::onStreamRenegotiateFormat(void*, unsigned long) (data=0x56157eeb7a70) at ./src/plugins/screencast/screencaststream.cpp:296
#2  0x00007f3206a0c7f9 in source_event_func (source=0x56157fc90c80) at ../spa/plugins/support/loop.c:615
#3  0x00007f3206a0eece in loop_iterate (object=0x56157fca3e98, timeout=0) at ../spa/plugins/support/loop.c:452
#4  0x000056157d15fe8e in operator() (__closure=<optimized out>) at ./src/plugins/screencast/pipewirecore.cpp:67
#5  QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, KWin::PipeWireCore::init()::<lambda()> >::call (arg=<optimized out>, f=<optimized out>)
    at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:146
#6  QtPrivate::Functor<KWin::PipeWireCore::init()::<lambda()>, 0>::call<QtPrivate::List<>, void> (arg=<optimized out>, f=<optimized out>)
    at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:256
#7  QtPrivate::QFunctorSlotObject<KWin::PipeWireCore::init()::<lambda()>, 0, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *)
    (which=<optimized out>, this_=<optimized out>, r=<optimized out>, a=<optimized out>, ret=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:443
#8  0x00007f323fae8f8f in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7ffed5e9d740, r=0x56157fc883d0, this=0x56157fcfe650)
    at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#9  doActivate<false>(QObject*, int, void**) (sender=0x56157f071a90, signal_index=3, argv=0x7ffed5e9d740) at kernel/qobject.cpp:3923
#10 0x00007f323fae222f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
    (sender=sender@entry=0x56157f071a90, m=m@entry=0x7f323fd4d1a0 <QSocketNotifier::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffed5e9d740)
    at kernel/qobject.cpp:3983
#11 0x00007f323faec2cf in QSocketNotifier::activated(QSocketDescriptor, QSocketNotifier::Type, QSocketNotifier::QPrivateSignal) (this=this@entry=0x56157f071a90, _t1=..., _t2=<optimized out>, _t3=...)
    at .moc/moc_qsocketnotifier.cpp:178
#12 0x00007f323faecad5 in QSocketNotifier::event(QEvent*) (this=0x56157f071a90, e=<optimized out>) at kernel/qsocketnotifier.cpp:302
#13 0x00007f323ef62fae in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x56157f071a90, e=0x7ffed5e9d840) at kernel/qapplication.cpp:3640
#14 0x00007f323fab1738 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x56157f071a90, event=0x7ffed5e9d840) at kernel/qcoreapplication.cpp:1064
#15 0x00007f323fab18fe in QCoreApplication::sendEvent(QObject*, QEvent*) (receiver=<optimized out>, event=<optimized out>) at kernel/qcoreapplication.cpp:1462
#16 0x00007f323fb06cb3 in QEventDispatcherUNIXPrivate::activateSocketNotifiers() (this=this@entry=0x56157da9c7a0) at kernel/qeventdispatcher_unix.cpp:304
#17 0x00007f323fb07177 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=<optimized out>, flags=...) at kernel/qeventdispatcher_unix.cpp:511
#18 0x000056157d22b96d in QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
#19 0x00007f323fab01bb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffed5e9d9d0, flags=..., flags@entry=...)
    at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#20 0x00007f323fab8316 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#21 0x00007f323ff30ecc in QGuiApplication::exec() () at kernel/qguiapplication.cpp:1863
#22 0x00007f323ef62f25 in QApplication::exec() () at kernel/qapplication.cpp:2832
#23 0x000056157d136f28 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at ./src/main_wayland.cpp:628
(gdb) 


EXPECTED RESULT
No crash

SOFTWARE/OS VERSIONS
Windows: 
macOS: 
(available in the Info Center app, or by running `kinfo` in a terminal window)
Linux/KDE Plasma: 
KDE Plasma Version: 
KDE Frameworks Version: 
Qt Version: 

ADDITIONAL INFORMATION
Comment 1 Bug Janitor Service 2024-12-13 19:33:36 UTC
Thank you for the bug report!

Debian advises users to not submit bugs upstream (https://www.debian.org/Bugs/Reporting), and Plasma 5.27.5 is no longer eligible for support or maintenance from KDE. It's possible that the issue exists only in Debian at this point.

Could you report the bug to Debian using the report bug utility (https://packages.debian.org/stable/utils/reportbug)? If necessary, the maintainer of the package will forward the bug upstream.
Thanks for understanding!

Thanks again!