DESCRIPTION plasmashell crashes always for me when Audex (Flatpak from Flathub) on KDE Linux ejects a disk. I can't reproduce this crash with Kubuntu 26.04 as OS (Plasma 6.6.4, Frameworks 6.24.0, Qt 6.10.2, Kernel 7.0.0-22). STEPS TO REPRODUCE 1. Have a CD drive. 2. Insert an Audio CD. 3. Open Audex. 4. Click the eject button. SOFTWARE/OS VERSIONS Operating System: KDE Linux 2026-06-23 KDE Plasma Version: 6.7.80 KDE Frameworks Version: 6.28.0 Qt Version: 6.11.1 Kernel Version: 7.0.12-arch1-1 (64-bit) Graphics Platform: Wayland Processors: 16 × AMD Ryzen 7 5700G with Radeon Graphics Memory: 64 GiB of RAM (61.6 GiB usable) Graphics Processor: AMD Radeon Graphics Manufacturer: ASUS ADDITIONAL INFORMATION Backtrace of main thread (see attached file for full bt): Thread 1 (Thread 0x7effcf6ba280 (LWP 1856)): [KCrash Handler] #5 0x00007effd9489cd4 in Solid::StorageAccess::isAccessible (this=this@entry=0x0) at /builder/src/solid/src/solid/devices/frontend/storageaccess.cpp:58 #6 0x00007effbc721c00 in StateInfo::setIdleState (this=this@entry=0x55e0490757c0, operationResult=Solid::NoError, operationInfo=..., udi=...) at /builder/src/plasma-workspace/applets/devicenotifier/stateinfo.cpp:236 #7 0x00007effbc7241cf in QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul, 1ul, 2ul>, QtPrivate::List<Solid::ErrorType, QVariant, QString const&>, void, void (StateInfo::*)(Solid::ErrorType, QVariant, QString const&)>::call(void (StateInfo::*)(Solid::ErrorType, QVariant, QString const&), StateInfo*, void**)::{lambda()#1}::operator()() const (__closure=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:127 #8 QtPrivate::FunctorCallBase::call_internal<void, QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul, 1ul, 2ul>, QtPrivate::List<Solid::ErrorType, QVariant, QString const&>, void, void (StateInfo::*)(Solid::ErrorType, QVariant, QString const&)>::call(void (StateInfo::*)(Solid::ErrorType, QVariant, QString const&), StateInfo*, void**)::{lambda()#1}>(void**, QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul, 1ul, 2ul>, QtPrivate::List<Solid::ErrorType, QVariant, QString const&>, void, void (StateInfo::*)(Solid::ErrorType, QVariant, QString const&)>::call(void (StateInfo::*)(Solid::ErrorType, QVariant, QString const&), StateInfo*, void**)::{lambda()#1}&&) (args=<optimized out>, fn=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:66 #9 QtPrivate::FunctorCall<std::integer_sequence<unsigned long, 0ul, 1ul, 2ul>, QtPrivate::List<Solid::ErrorType, QVariant, QString const&>, void, void (StateInfo::*)(Solid::ErrorType, QVariant, QString const&)>::call (f=<optimized out>, o=<optimized out>, arg=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:127 #10 QtPrivate::FunctionPointer<void (StateInfo::*)(Solid::ErrorType, QVariant, QString const&)>::call<QtPrivate::List<Solid::ErrorType, QVariant, QString const&>, void> (f=<optimized out>, o=<optimized out>, arg=0x7fffd8cb0990) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:175 #11 QtPrivate::QCallableObject<void (StateInfo::*)(Solid::ErrorType, QVariant, QString const&), QtPrivate::List<Solid::ErrorType, QVariant, QString const&>, void>::impl (which=<optimized out>, this_=<optimized out>, r=<optimized out>, a=0x7fffd8cb0990, ret=<optimized out>) at /usr/include/qt6/QtCore/qobjectdefs_impl.h:546 #12 0x00007effd61e881b in QtPrivate::QSlotObjectBase::call (this=0x55e04aac1e70, r=<optimized out>, a=0x7fffd8cb0990, this=<optimized out>, r=<optimized out>, a=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobjectdefs_impl.h:462 #13 doActivate<false> (sender=0x55e04a614620, signal_index=4, argv=0x7fffd8cb0990) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4372 #14 0x00007effd948520b in QMetaObject::activate<void, Solid::ErrorType, QVariant, QString> (sender=0x55e04999df60, mo=0x7effd95686e0 <Solid::OpticalDrive::staticMetaObject>, local_signal_index=1, ret=0x0) at /usr/include/qt6/QtCore/qobjectdefs.h:320 #15 Solid::OpticalDrive::ejectDone (this=this@entry=0x55e04a614620, _t1=<optimized out>, _t2=..., _t3=...) at /usr/src/debug/90ecfbe7-4601436.x86-64/solid/src/solid/KF6Solid_autogen/include/moc_opticaldrive.cpp:253 #16 0x00007effd94855f4 in Solid::OpticalDrive::qt_static_metacall (_o=0x55e04a614620, _c=<optimized out>, _id=<optimized out>, _a=0x7fffd8cb0b70) at /usr/src/debug/90ecfbe7-4601436.x86-64/solid/src/solid/KF6Solid_autogen/include/moc_opticaldrive.cpp:163 #17 0x00007effd61e8a59 in doActivate<false> (sender=0x55e04999ded0, signal_index=4, argv=0x7fffd8cb0b70) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:4384 #18 0x00007effd94fa69a in QMetaObject::activate<void, Solid::ErrorType, QVariant, QString> (sender=0x55e04999ded0, mo=0x7effd9571720 <Solid::Backends::UDisks2::OpticalDrive::staticMetaObject>, local_signal_index=1, ret=0x0) at /usr/include/qt6/QtCore/qobjectdefs.h:320 #19 Solid::Backends::UDisks2::OpticalDrive::ejectDone (this=0x55e04999ded0, _t1=<optimized out>, _t2=..., _t3=...) at /usr/src/debug/90ecfbe7-4601436.x86-64/solid/src/solid/KF6Solid_autogen/include/moc_udisksopticaldrive.cpp:205 #20 Solid::Backends::UDisks2::OpticalDrive::slotEjectDone (this=0x55e04999ded0, error=0, errorString=...) at /builder/src/solid/src/solid/devices/backends/udisks2/udisksopticaldrive.cpp:123 #21 0x00007effd94fab63 in Solid::Backends::UDisks2::OpticalDrive::qt_metacall (this=0x55e04999ded0, _c=QMetaObject::InvokeMetaMethod, _id=6, _a=0x7fffd8cb0d28) at /usr/src/debug/90ecfbe7-4601436.x86-64/solid/src/solid/KF6Solid_autogen/include/moc_udisksopticaldrive.cpp:185 #22 0x00007effd66d6f89 in QDBusConnectionPrivate::deliverCall (this=0x7effc8001680, object=0x55e04999ded0, msg=..., metaTypes=<optimized out>, slotIdx=10) at /usr/src/debug/qt6-base/qtbase/src/dbus/qdbusintegrator.cpp:1009 #23 0x00007effd61dfd46 in QObject::event (this=<optimized out>, e=<optimized out>) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qobject.cpp:1479 #24 0x00007effd899011f in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x55e04999ded0, e=0x7effc8037dc0) at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qapplication.cpp:3276 #25 0x00007effd617b658 in QCoreApplication::notifyInternal2 (receiver=0x55e04999ded0, event=event@entry=0x7effc8037dc0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1114 #26 0x00007effd617ba61 in QCoreApplication::sendEvent (receiver=<optimized out>, event=0x7effc8037dc0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1559 #27 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x55e0469c6250) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1914 #28 0x00007effd6497c98 in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1767 #29 postEventSourceDispatch (s=0x55e0469d3730) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:248 #30 0x00007effd4910bfd in g_main_dispatch (context=0x7effc8000f00) at ../glib/glib/gmain.c:3591 #31 0x00007effd4912e57 in g_main_context_dispatch_unlocked (context=0x7effc8000f00) at ../glib/glib/gmain.c:4451 #32 g_main_context_iterate_unlocked (context=context@entry=0x7effc8000f00, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4516 #33 0x00007effd4912fe5 in g_main_context_iteration (context=0x7effc8000f00, may_block=1) at ../glib/glib/gmain.c:4582 #34 0x00007effd64950b2 in QEventDispatcherGlib::processEvents (this=0x55e0469d33f0, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:402 #35 0x00007effd6189983 in QEventLoop::processEvents (this=0x7fffd8cb1380, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:109 #36 QEventLoop::exec (this=0x7fffd8cb1380, flags=...) at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qeventloop.cpp:198 #37 0x00007effd617eeaa in QCoreApplication::exec () at /usr/src/debug/qt6-base/qtbase/src/corelib/kernel/qcoreapplication.cpp:1457 #38 0x00007effd898c33a in QApplication::exec () at /usr/src/debug/qt6-base/qtbase/src/widgets/kernel/qapplication.cpp:2546 #39 0x000055e03e583885 in main (argc=<optimized out>, argv=<optimized out>) at /builder/src/plasma-workspace/shell/main.cpp:204
Created attachment 193585 [details] Full backtrace of the crash
This also happens when Audex is configured to auto-eject the CD after ripping finnished. With other CD Rippers from Flathub that work on KDE Linux (Asunder, Grim Ripper, fre:ac), I can't trigger this crash when I let them open the drive.
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/6790
More details, in case it helps: What causes the same crash: * Ejecting an Audio-CD via Dolphin's sidebar (context menu) What doesn't cause a crash: * Ejecting via physical eject button on drive * Ejecting a data CD-ROM via Dolphin's sidebar * Ejecting an Audio-CD via Dolphin's sidebar on Kubuntu 26.04 instead of KDE Linux Noticed the MR, hope I'll get around to test it soon!
Git commit 78b05931f1e91d4bbdb519977ec17726371e4039 by Kai Uwe Broulik. Committed on 24/06/2026 at 09:35. Pushed by meven into branch 'master'. applets/devicenotifier: Check StorageAccess being null It is also connected to OpticalDrive which is not a storage access. M +5 -5 applets/devicenotifier/stateinfo.cpp https://invent.kde.org/plasma/plasma-workspace/-/commit/78b05931f1e91d4bbdb519977ec17726371e4039
Git commit 6786986f8af6674a965f46a21016c99be41e5d5c by Kai Uwe Broulik. Committed on 30/06/2026 at 08:03. Pushed by broulik into branch 'Plasma/6.7'. applets/devicenotifier: Check StorageAccess being null It is also connected to OpticalDrive which is not a storage access. (cherry picked from commit 78b05931f1e91d4bbdb519977ec17726371e4039) Co-authored-by: Kai Uwe Broulik <kde@privat.broulik.de> M +5 -5 applets/devicenotifier/stateinfo.cpp https://invent.kde.org/plasma/plasma-workspace/-/commit/6786986f8af6674a965f46a21016c99be41e5d5c
Git commit 644691aa8f83d2931e2b7d28b38f6fedfe35f4d6 by Kai Uwe Broulik, on behalf of Kai Uwe Broulik. Committed on 07/07/2026 at 10:00. Pushed by broulik into branch 'Plasma/6.6'. applets/devicenotifier: Check StorageAccess being null It is also connected to OpticalDrive which is not a storage access. (cherry picked from commit 78b05931f1e91d4bbdb519977ec17726371e4039) M +5 -5 applets/devicenotifier/devicestatemonitor_p.cpp https://invent.kde.org/plasma/plasma-workspace/-/commit/644691aa8f83d2931e2b7d28b38f6fedfe35f4d6