Bug 509565 - plasmashell crashes with Wayland Chromium video playback
Summary: plasmashell crashes with Wayland Chromium video playback
Status: RESOLVED DUPLICATE of bug 509192
Alias: None
Product: plasmashell
Classification: Plasma
Component: Media Player widget (other bugs)
Version First Reported In: 6.4.5
Platform: Arch Linux Linux
: NOR crash
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-09-16 19:43 UTC by wheniwasatruestar
Modified: 2025-09-16 21:28 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 wheniwasatruestar 2025-09-16 19:43:16 UTC
SUMMARY
Playing some videos in Chromium browser with wayland backend will crash plasmashell.

STEPS TO REPRODUCE
1. Create a new user.
2. Add a MediaController applet to the desktop.
3. Open `google-chrome-stable --enable-features=UseOzonePlatform --ozone-platform=wayland --password-store=kwallet6 --enable-wayland-ime` (or `brave --...`) (via the command prompt), and play a Youtube video (either https://www.youtube.com or through music.youtube.com), or another video, such as `https://m.weibo.cn/status/4606042384114943`.
4. Plasmashell crashes. It will repeatedly crash even if you invoke `plasmashell --replace` from krunner/terminal until the chromium-based browser is closed.

OBSERVED RESULT
The entire desktop and toolbar etc goes down.

EXPECTED RESULT
Plasma does not crash.

SOFTWARE/OS VERSIONS
Operating System: Arch Linux 
KDE Plasma Version: 6.4.5
KDE Frameworks Version: 6.18.0
Qt Version: 6.9.2
Kernel Version: 6.16.7-arch1-1 (64-bit)
Graphics Platform: Wayland
Processors: 12 × 12th Gen Intel® Core™ i5-12400F
Memory: 16 GiB of RAM (15.5 GiB usable)
Graphics Processor: NVIDIA GeForce RTX 3060

ADDITIONAL INFORMATION
Possibly related stacktrace and journalctl: https://github.com/brave/brave-browser/issues/49185
Was also present in Plasma 6.4.4, but I definetly took quite a while to try find a minimal reproduction.

All flags specified from here on are appended after `--enable-features=UseOzonePlatform --ozone-platform=wayland --password-store=kwallet6 --enable-wayland-ime`.
Crashes with `--use-gl=angle`.
`--disable-gpu` does not crash. `--disable-features=VaapiVideoDecoder,UseChromeOSDirectVideoDecoder` does not crash. `--use-gl=angle --use-angle=gl` does not crash. `--use-gl=angle --use-angle=vulkan` does not crash. `--ozone-platform=x11` does not crash.

```
[ ~/.config ] ➜ pacman -Qs 'nvidia-vaapi-driver|libva-nvidia-driver'
local/libva-nvidia-driver 0.0.14-1
    VA-API implementation that uses NVDEC as a backend
[ ~/.config ] ➜ pacman -Q plasma-workspace kirigami qt6-declarative kio nvidia nvidia-utils 
plasma-workspace 6.4.5-1
kirigami 6.18.0-1
qt6-declarative 6.9.2-1
kio 6.18.0-1
nvidia 580.82.09-2
nvidia-utils 580.82.09-1
```
Downgrading to nvidia-580.82.07-2 (from Arch repos) did not help either.
Comment 1 TraceyC 2025-09-16 21:25:37 UTC
Backtraces in other bug report systems aren't as useful as being included in the report here.
Searchable backtrace:


Thread 1 "plasmashell" received signal SIGSEGV, Segmentation fault.
__pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=11, no_tid=no_tid@entry=0) at pthread_kill.c:44
44	     return INTERNAL_SYSCALL_ERROR_P (ret) ? INTERNAL_SYSCALL_ERRNO (ret) : 0;
(gdb) bt
#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=11, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1  0x00007ffff4898a13 in __pthread_kill_internal (threadid=<optimized out>, signo=11) at pthread_kill.c:89
#2  0x00007ffff483e410 in __GI_raise (sig=11) at ../sysdeps/posix/raise.c:26
#3  0x00007ffff7be9e97 in KCrash::defaultCrashHandler (sig=11) at /usr/src/debug/kcrash/kcrash-6.17.0/src/kcrash.cpp:605
#4  <signal handler called>
#5  0x00007fffee3393f8 in QJSEngine::handle (this=<optimized out>, this=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsapi/qjsengine.h:320
#6  QQmlEnginePrivate::getV4Engine (e=<optimized out>, e=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/qml/qqmlengine_p.h:334
#7  QQuickStackElement::initialize (this=this@entry=0x55555d558c30, requiredProperties=requiredProperties@entry=0x0)
    at /usr/src/debug/qt6-declarative/qtdeclarative/src/quicktemplates/qquickstackelement.cpp:210
#8  0x00007fffee339efb in QQuickStackElement::load (this=0x55555d558c30, parent=0x555559757ff0)
    at /usr/src/debug/qt6-declarative/qtdeclarative/src/quicktemplates/qquickstackelement.cpp:180
#9  0x00007fffee34412f in QQuickStackView::replace (this=0x555559757ff0, args=0x7fffffffc590)
    at /usr/src/debug/qt6-declarative/qtdeclarative/src/quicktemplates/qquickstackview.cpp:910
#10 0x00007fffee345dac in QQuickStackView::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>)
    at /usr/src/debug/qt6-declarative/build/src/quicktemplates/QuickTemplates2_autogen/include/moc_qquickstackview_p.cpp:465
#11 0x00007fffee3465d7 in QQuickStackView::qt_metacall (this=0x555559757ff0, _c=<optimized out>, _id=18, _a=0x7fffffffc5b0)
    at /usr/src/debug/qt6-declarative/build/src/quicktemplates/QuickTemplates2_autogen/include/moc_qquickstackview_p.cpp:725
#12 0x00007ffff65542c3 in QQmlObjectOrGadget::metacall (this=<optimized out>, type=<optimized out>, index=<optimized out>, argv=<optimized out>)
    at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/qml/qqmlobjectorgadget.cpp:14
#13 0x00007ffff6411945 in operator() (__closure=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:3070
#14 operator()<QV4::QObjectMethod::callInternal(const QV4::Value*, const QV4::Value*, int) const::<lambda()> > (__closure=<synthetic pointer>, call=...)
    at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:3053
#15 QV4::QObjectMethod::callInternal (this=<optimized out>, thisObject=<optimized out>, argv=0x7fffcc5be560, argc=3)
    at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4qobjectwrapper.cpp:3064
#16 0x00007ffff646ba6e in QV4::Moth::VME::interpret (frame=0x555559757ff0, frame@entry=0x7fffffffcae0, engine=0x5555560e7c40, code=0x7fffcc5be548 "\300\236Yo\377\177")
    at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:798
#17 0x00007ffff646f584 in QV4::Moth::VME::exec (frame=<optimized out>, engine=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4vme_moth.cpp:487
#18 0x00007ffff63c4140 in QV4::Moth::VME::exec (frame=0x7fffffffcae0, engine=0x5555560e7c40) at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4engine_p.h:830
#19 qfoDoCall (fo=<optimized out>, thisObject=<optimized out>, argv=<optimized out>, argc=<optimized out>)
    at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4functionobject.cpp:527
#20 0x00007ffff640515c in QV4::QObjectSlotDispatcher::impl (which=<optimized out>, this_=<optimized out>, receiver=<optimized out>, metaArgs=<optimized out>, ret=<optimized out>)
    at /usr/src/debug/qt6-declarative/qtdeclarative/src/qml/jsruntime/qv4jscall_p.h:81
#21 0x00007ffff51d466f 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
#22 doActivate<false> (sender=<optimized out>, signal_index=<optimized out>, argv=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4157
#23 0x00007ffff6998239 in QMetaObject::activate<void, QQuickImageBase::Status> (sender=0x5555589402f0, mo=<optimized out>, local_signal_index=2, ret=0x0)
    at /usr/include/qt6/QtCore/qobjectdefs.h:306
#24 QQuickImageBase::statusChanged (this=0x5555589402f0, _t1=<optimized out>) at /usr/src/debug/qt6-declarative/build/src/quick/Quick_autogen/include/moc_qquickimagebase_p.cpp:325
#25 QQuickImageBase::requestFinished (this=0x5555589402f0) at /usr/src/debug/qt6-declarative/qtdeclarative/src/quick/items/qquickimagebase.cpp:384
#26 0x00007ffff6993c47 in QQuickImageBase::qt_metacall (this=this@entry=0x5555589402f0, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=13, _a=_a@entry=0x7fffffffcfb8)
    at /usr/src/debug/qt6-declarative/build/src/quick/Quick_autogen/include/moc_qquickimagebase_p.cpp:293
#27 0x00007ffff6996c3e in QQuickImage::qt_metacall (this=0x5555589402f0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fffffffcfb8)
    at /usr/src/debug/qt6-declarative/build/src/quick/Quick_autogen/include/moc_qquickimage_p.cpp:249
#28 0x00007ffff51d4aab in doActivate<false> (sender=<optimized out>, signal_index=<optimized out>, argv=<optimized out>)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4183
#29 0x00007ffff6bc349f in QQuickPixmapReply::finished (this=0x55555bb75c20) at /usr/src/debug/qt6-declarative/build/src/quick/Quick_autogen/include/qquickpixmapcache.moc:123
#30 QQuickPixmapReply::event (this=0x55555bb75c20, event=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative/src/quick/util/qquickpixmapcache.cpp:1430
--Type <RET> for more, q to quit, c to continue without paging--c
#31 QQuickPixmapReply::event (this=0x55555bb75c20, event=<optimized out>) at /usr/src/debug/qt6-declarative/qtdeclarative/src/quick/util/qquickpixmapcache.cpp:1408
#32 0x00007ffff7301dd0 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x55555bb75c20, e=0x7fff780060c0)
    at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qapplication.cpp:3300
#33 0x00007ffff5168678 in QCoreApplication::notifyInternal2 (receiver=0x55555bb75c20, event=event@entry=0x7fff780060c0)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1106
#34 0x00007ffff5168a5b in QCoreApplication::sendEvent (receiver=<optimized out>, event=0x7fff780060c0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1546
#35 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x555555666ec0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1891
#36 0x00007ffff54437f8 in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1744
#37 postEventSourceDispatch (s=0x55555566e390) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:246
#38 0x00007ffff3b9a880 in g_main_dispatch (context=0x7fffe8000f70) at ../glib/glib/gmain.c:3398
#39 0x00007ffff3b9bcd7 in g_main_context_dispatch_unlocked (context=0x7fffe8000f70) at ../glib/glib/gmain.c:4249
#40 g_main_context_iterate_unlocked (context=context@entry=0x7fffe8000f70, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4314
#41 0x00007ffff3b9bee5 in g_main_context_iteration (context=0x7fffe8000f70, may_block=1) at ../glib/glib/gmain.c:4379
#42 0x00007ffff543ffe2 in QEventDispatcherGlib::processEvents (this=0x55555566eb40, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:399
#43 0x00007ffff5174ca6 in QEventLoop::processEvents (this=0x7fffffffd480, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:104
#44 QEventLoop::exec (this=0x7fffffffd480, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:186
#45 0x00007ffff516cd21 in QCoreApplication::exec () at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1449
#46 0x00007ffff72fc5ea in QApplication::exec () at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qapplication.cpp:2567
#47 0x000055555557c3f1 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/plasma-workspace/plasma-workspace-6.4.4/shell/main.cpp:188
(gdb) c
Continuing.
Couldn't get registers: No such process.
(gdb) [Thread 0x7fff6ebbc6c0 (LWP 25705) exited]
[Thread 0x7fff712b06c0 (LWP 25703) exited]
[Thread 0x7fff71af36c0 (LWP 25700) exited]
[Thread 0x7fff723286c0 (LWP 25699) exited]
[Thread 0x7fff72fe86c0 (LWP 25698) exited]
[Thread 0x7fff6ffbd6c0 (LWP 25685) exited]
[Thread 0x7fff707be6c0 (LWP 25678) exited]
[Thread 0x7fff850b66c0 (LWP 25677) exited]
[Thread 0x7fff87fff6c0 (LWP 25674) exited]
[Thread 0x7fffa54996c0 (LWP 25669) exited]
[Thread 0x7fffb4dd96c0 (LWP 25662) exited]
[Thread 0x7fffb7fff6c0 (LWP 25645) exited]
[Thread 0x7fffc59776c0 (LWP 25644) exited]
[Thread 0x7fffc6bbc6c0 (LWP 25643) exited]
[Thread 0x7fffc7bff6c0 (LWP 25641) exited]
[Thread 0x7fffcd1ff6c0 (LWP 25640) exited]
[Thread 0x7fffee1ff6c0 (LWP 25629) exited]
[Thread 0x7fffeedff6c0 (LWP 25628) exited]
[Thread 0x7fffef260a40 (LWP 25453) exited]
[Thread 0x7fffed9fe6c0 (LWP 25630) exited]
[New process 25453]

Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.
Comment 2 TraceyC 2025-09-16 21:28:27 UTC
Based on the backtrace this looks like a duplicate of bug 509192. Please follow that report if you would like updates on the progress of this issue.

Thanks.

*** This bug has been marked as a duplicate of bug 509192 ***