Bug 494659 - The plasmashell crashes in DeviceControl::onDeviceRemoved() after unplugging freshly formatted USB flash drive
Summary: The plasmashell crashes in DeviceControl::onDeviceRemoved() after unplugging ...
Status: REPORTED
Alias: None
Product: plasmashell
Classification: Plasma
Component: generic-crash (show other bugs)
Version: 6.2.0
Platform: Fedora RPMs Linux
: NOR crash
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords: drkonqi
: 499382 (view as bug list)
Depends on:
Blocks:
 
Reported: 2024-10-13 13:11 UTC by LocalT0aster
Modified: 2025-02-19 16:41 UTC (History)
6 users (show)

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


Attachments
New crash information added by DrKonqi (166.59 KB, text/plain)
2024-10-13 13:11 UTC, LocalT0aster
Details

Note You need to log in before you can comment on or make changes to this bug.
Description LocalT0aster 2024-10-13 13:11:57 UTC
Application: plasmashell (6.2.0)

ApplicationNotResponding [ANR]: false
Qt Version: 6.7.2
Frameworks Version: 6.7.0
Operating System: Linux 6.10.12-200.fc40.x86_64 x86_64
Windowing System: Wayland
Distribution: "Fedora Linux 40.20241012.0 (Kinoite)"
DrKonqi: 6.2.0 [CoredumpBackend]

-- Information about the crash:
Steps to reproduce:
1. Plug the usb flash formatted in exfat (GPT table)
2. format to btrfs using KDE Partition Manager (default partition settings)
3. Unplug the flash drive

Expected result:
Successfull unplug

Obtained result:
plasmashell segfaults

Unusual behaviour:
There was 3 instances of the same flash drive in the Disks & Devices menu at system tray.

The crash can be reproduced every time.

-- Backtrace (Reduced):
#5  QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::get (this=0x8) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/tools/qscopedpointer.h:110
[...]
#8  QObject::deleteLater (this=0x0) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qobject.cpp:2462
#9  0x00007f482ff85d11 in DeviceControl::onDeviceRemoved (this=<optimized out>, udi=...) at /usr/src/debug/plasma-workspace-6.2.0-2.fc40.x86_64/applets/devicenotifier/plugin/devicecontrol.cpp:288
#10 0x00007f4899ffc8f2 in QtPrivate::QSlotObjectBase::call (this=0x5573a9a76b20, r=<optimized out>, a=0x7ffe36865550) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qobjectdefs_impl.h:469
#11 doActivate<false> (sender=0x5573a8fae8c0, signal_index=4, argv=0x7ffe36865550) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qobject.cpp:4086


Reported using DrKonqi
Comment 1 LocalT0aster 2024-10-13 13:11:58 UTC
Created attachment 174772 [details]
New crash information added by DrKonqi

DrKonqi auto-attaching complete backtrace.
Comment 2 TraceyC 2024-11-12 22:06:00 UTC
Searchable backtrace

Thread 1 (Thread 0x7f4893c14b00 (LWP 2132)):
[KCrash Handler]
#5  QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::get (this=0x8) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/tools/qscopedpointer.h:110
#6  qGetPtrHelper<QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> > > (ptr=...) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/global/qtclasshelpermacros.h:79
#7  QObject::d_func (this=0x0) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qobject.h:107
#8  QObject::deleteLater (this=0x0) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qobject.cpp:2462
#9  0x00007f482ff85d11 in DeviceControl::onDeviceRemoved (this=<optimized out>, udi=...) at /usr/src/debug/plasma-workspace-6.2.0-2.fc40.x86_64/applets/devicenotifier/plugin/devicecontrol.cpp:288
#10 0x00007f4899ffc8f2 in QtPrivate::QSlotObjectBase::call (this=0x5573a9a76b20, r=<optimized out>, a=0x7ffe36865550) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qobjectdefs_impl.h:469
#11 doActivate<false> (sender=0x5573a8fae8c0, signal_index=4, argv=0x7ffe36865550) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qobject.cpp:4086
#12 0x00007f4899ff2bc7 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7f489cca0780 <Solid::DeviceNotifier::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffe36865550) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qobject.cpp:4146
#13 0x00007f489cbf8eac in Solid::DeviceNotifier::deviceRemoved (this=<optimized out>, _t1=<optimized out>) at /usr/src/debug/kf6-solid-6.7.0-1.fc40.x86_64/redhat-linux-build/src/solid/KF6Solid_autogen/include/moc_devicenotifier.cpp:162
#14 0x00007f4899ffc8f2 in QtPrivate::QSlotObjectBase::call (this=0x5573a8f41120, r=<optimized out>, a=0x7ffe36865660) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qobjectdefs_impl.h:469
#15 doActivate<false> (sender=0x5573a8ed0720, signal_index=4, argv=0x7ffe36865660) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qobject.cpp:4086
#16 0x00007f4899ff2bc7 in QMetaObject::activate (sender=<optimized out>, m=<optimized out>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffe36865660) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qobject.cpp:4146
#17 0x00007f489cc0ea4c in Solid::Ifaces::DeviceManager::deviceRemoved (this=<optimized out>, _t1=<optimized out>) at /usr/src/debug/kf6-solid-6.7.0-1.fc40.x86_64/redhat-linux-build/src/solid/KF6Solid_autogen/include/moc_devicemanager.cpp:162
#18 0x00007f489cc37112 in Solid::Backends::UDisks2::Manager::slotInterfacesRemoved (this=<optimized out>, object_path=<optimized out>, interfaces=<optimized out>) at /usr/src/debug/kf6-solid-6.7.0-1.fc40.x86_64/src/solid/devices/backends/udisks2/udisksmanager.cpp:241
#19 Solid::Backends::UDisks2::Manager::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /usr/src/debug/kf6-solid-6.7.0-1.fc40.x86_64/redhat-linux-build/src/solid/KF6Solid_autogen/include/moc_udisksmanager.cpp:113
#20 0x00007f4899ffcc60 in doActivate<false> (sender=0x5573a8ed0738, signal_index=4, argv=0x7ffe36865940) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qobject.cpp:4098
#21 0x00007f4899ff2bc7 in QMetaObject::activate (sender=<optimized out>, m=m@entry=0x7f489cca6de0 <OrgFreedesktopDBusObjectManagerInterface::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffe36865940) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qobject.cpp:4146
#22 0x00007f489cc4b286 in OrgFreedesktopDBusObjectManagerInterface::InterfacesRemoved (this=<optimized out>, _t1=<optimized out>, _t2=<optimized out>) at /usr/src/debug/kf6-solid-6.7.0-1.fc40.x86_64/redhat-linux-build/src/solid/KF6Solid_autogen/include/moc_manager.cpp:200
#23 OrgFreedesktopDBusObjectManagerInterface::qt_static_metacall (_o=_o@entry=0x5573a8ed0738, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=1, _a=_a@entry=0x7ffe36865b18) at /usr/src/debug/kf6-solid-6.7.0-1.fc40.x86_64/redhat-linux-build/src/solid/KF6Solid_autogen/include/moc_manager.cpp:115
#24 0x00007f489cc4e13a in OrgFreedesktopDBusObjectManagerInterface::qt_metacall (this=0x5573a8ed0738, _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0x7ffe36865b18) at /usr/src/debug/kf6-solid-6.7.0-1.fc40.x86_64/redhat-linux-build/src/solid/KF6Solid_autogen/include/moc_manager.cpp:179
#25 0x00007f489b77c421 in QDBusConnectionPrivate::deliverCall (this=0x7f488000dd20, object=0x5573a8ed0738, msg=..., metaTypes=..., slotIdx=6) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/dbus/qdbusintegrator.cpp:1007
#26 0x00007f4899feddcb in QObject::event (this=0x5573a8ed0738, e=0x7f4880054b80) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qobject.cpp:1452
#27 0x00007f489c38b218 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x5573a8ed0738, e=0x7f4880054b80) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/widgets/kernel/qapplication.cpp:3287
#28 0x00007f4899f96e88 in QCoreApplication::notifyInternal2 (receiver=0x5573a8ed0738, event=0x7f4880054b80) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qcoreapplication.cpp:1142
#29 0x00007f4899f970ed in QCoreApplication::sendEvent (receiver=<optimized out>, event=<optimized out>) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qcoreapplication.cpp:1583
#30 0x00007f4899f9ac51 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x5573a8004ba0) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qcoreapplication.cpp:1940
#31 0x00007f4899f9aefd in QCoreApplication::sendPostedEvents (receiver=<optimized out>, event_type=<optimized out>) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qcoreapplication.cpp:1797
#32 0x00007f489a2859ef in postEventSourceDispatch (s=0x5573a80ceb30) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:244
#33 0x00007f4898b12e8c in g_main_dispatch (context=0x7f4880000f00) at ../glib/gmain.c:3344
#34 g_main_context_dispatch_unlocked (context=0x7f4880000f00) at ../glib/gmain.c:4152
#35 0x00007f4898b74c98 in g_main_context_iterate_unlocked.isra.0 (context=context@entry=0x7f4880000f00, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4217
#36 0x00007f4898b14383 in g_main_context_iteration (context=0x7f4880000f00, may_block=1) at ../glib/gmain.c:4282
#37 0x00007f489a2851a3 in QEventDispatcherGlib::processEvents (this=0x5573a8031fc0, flags=...) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/kernel/qeventdispatcher_glib.cpp:394
#38 0x00007f4899fa3bc3 in QEventLoop::exec (this=this@entry=0x7ffe36866180, flags=..., flags@entry=...) at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/global/qflags.h:34
#39 0x00007f4899f9fa7c in QCoreApplication::exec () at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/corelib/global/qflags.h:74
#40 0x00007f489a7d66ed in QGuiApplication::exec () at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/gui/kernel/qguiapplication.cpp:1926
#41 0x00007f489c38b189 in QApplication::exec () at /usr/src/debug/qt6-qtbase-6.7.2-6.fc40.x86_64/src/widgets/kernel/qapplication.cpp:2555
#42 0x000055736a005153 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/plasma-workspace-6.2.0-2.fc40.x86_64/shell/main.cpp:188
Comment 3 Nate Graham 2024-11-13 18:08:52 UTC
Can't reproduce it myself on current git master.
Comment 4 Nicolas Fella 2025-02-01 15:29:40 UTC
*** Bug 499382 has been marked as a duplicate of this bug. ***
Comment 5 Bogdan Onofriuchuk 2025-02-01 18:50:30 UTC
Can't reproduce. Tried different ways to reproduce the bug:
1. Suggested in the bug report
2. Create new GPT table and unplug.
3. Create different file systems and unplug.
4. Import Partition table and then unplug.
Comment 6 Eugene Shalygin 2025-02-04 16:36:14 UTC
Errr... I see a related crash (#499382) in 6.2.5.
Comment 7 Nate Graham 2025-02-19 16:40:50 UTC
*** Bug 499382 has been marked as a duplicate of this bug. ***
Comment 8 Nate Graham 2025-02-19 16:41:29 UTC
Apparently not fixed yet, as we have a new report (bug 494659) from Plasma 6.2.5 with the same backtrace. Re-opening.