https://bugs.kde.org/show_bug.cgi?id=445114

            Bug ID: 445114
           Summary: Plasma failure after safe disassembly of the external
                    drive.
           Product: plasmashell
           Version: 5.23.2
          Platform: Neon Packages
                OS: Linux
            Status: REPORTED
          Keywords: drkonqi
          Severity: crash
          Priority: NOR
         Component: general
          Assignee: k...@davidedmundson.co.uk
          Reporter: dariusz.tereszkiew...@gmail.com
                CC: plasma-b...@kde.org
  Target Milestone: 1.0

Application: plasmashell (5.23.2)

Qt Version: 5.15.3
Frameworks Version: 5.87.0
Operating System: Linux 5.11.0-36-generic x86_64
Windowing System: X11
Distribution: KDE neon User - Plasma 25th Anniversary Edition
DrKonqi: 5.23.2 [KCrashBackend]

-- Information about the crash:
- What I was doing when the application crashed:
Plasma crashes when you safely unmount the external drive.
Unmounting is done in two ways. Once, through the Disks applet. Two, through
the Dolphin app.
However, when I do it with the command "umount /dev/sdc1", there is no failure.

The fact that sometimes unmounting a partition, especially NTFS, takes a while,
as if the partition was still occupied. And when it performs an "unmount", I
see it, but I have the impression that Plasma wants to unmount the partition
too quickly

The crash can be reproduced every time.

-- Backtrace:
Application: Plazma (plasmashell), signal: Segmentation fault

[New LWP 1718]
[New LWP 1781]
[New LWP 1936]
[New LWP 1942]
[New LWP 1943]
[New LWP 1985]
[New LWP 1990]
[New LWP 2379]
[New LWP 2455]
[New LWP 7699]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007f5ecda7caff in __GI___poll (fds=0x7fffdbedb938, nfds=1, timeout=1000) at
../sysdeps/unix/sysv/linux/poll.c:29
__preamble__
[Current thread is 1 (Thread 0x7f5ec9bd19c0 (LWP 1612))]

Thread 11 (Thread 0x7f5e95752700 (LWP 7699)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0,
futex_word=0x565067dc2624) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x565067dc25d0,
cond=0x565067dc25f8) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x565067dc25f8, mutex=0x565067dc25d0) at
pthread_cond_wait.c:638
#3  0x00007f5ecde115cb in QWaitConditionPrivate::wait(QDeadlineTimer)
(deadline=..., this=0x565067dc25d0) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>,
mutex=0x5650685db4b0, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007f5ecfa7ac24 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#6  0x00007f5ecfa7b099 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#7  0x00007f5ecde0b45c in QThreadPrivate::start(void*) (arg=0x5650685db410) at
thread/qthread_unix.cpp:329
#8  0x00007f5eccd5a609 in start_thread (arg=<optimized out>) at
pthread_create.c:477
#9  0x00007f5ecda89293 in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 10 (Thread 0x7f5e9489e700 (LWP 2455)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0,
futex_word=0x565067f97174) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x565067f97120,
cond=0x565067f97148) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x565067f97148, mutex=0x565067f97120) at
pthread_cond_wait.c:638
#3  0x00007f5ecde115cb in QWaitConditionPrivate::wait(QDeadlineTimer)
(deadline=..., this=0x565067f97120) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>,
mutex=0x56506682b170, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007f5ecfa7ac24 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#6  0x00007f5ecfa7b099 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#7  0x00007f5ecde0b45c in QThreadPrivate::start(void*) (arg=0x56506682b0d0) at
thread/qthread_unix.cpp:329
#8  0x00007f5eccd5a609 in start_thread (arg=<optimized out>) at
pthread_create.c:477
#9  0x00007f5ecda89293 in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 9 (Thread 0x7f5e8bbff700 (LWP 2379)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0,
futex_word=0x565068596130) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x5650685960e0,
cond=0x565068596108) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x565068596108, mutex=0x5650685960e0) at
pthread_cond_wait.c:638
#3  0x00007f5ecde115cb in QWaitConditionPrivate::wait(QDeadlineTimer)
(deadline=..., this=0x5650685960e0) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>,
mutex=0x56506855bd20, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007f5ecfa7ac24 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#6  0x00007f5ecfa7b099 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#7  0x00007f5ecde0b45c in QThreadPrivate::start(void*) (arg=0x56506855bc80) at
thread/qthread_unix.cpp:329
#8  0x00007f5eccd5a609 in start_thread (arg=<optimized out>) at
pthread_create.c:477
#9  0x00007f5ecda89293 in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 8 (Thread 0x7f5e9c906700 (LWP 1990)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0,
futex_word=0x5650668869c0) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x565066886970,
cond=0x565066886998) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x565066886998, mutex=0x565066886970) at
pthread_cond_wait.c:638
#3  0x00007f5ecde115cb in QWaitConditionPrivate::wait(QDeadlineTimer)
(deadline=..., this=0x565066886970) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>,
mutex=0x56506646fbb0, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007f5ecfa7ac24 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#6  0x00007f5ecfa7b099 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#7  0x00007f5ecde0b45c in QThreadPrivate::start(void*) (arg=0x56506646fb10) at
thread/qthread_unix.cpp:329
#8  0x00007f5eccd5a609 in start_thread (arg=<optimized out>) at
pthread_create.c:477
#9  0x00007f5ecda89293 in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 0x7f5e9f3a4700 (LWP 1985)):
#0  0x00007f5ecc375508 in g_mutex_unlock () at
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f5ecc3278e1 in g_main_context_prepare () at
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f5ecc32829b in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f5ecc3284a3 in g_main_context_iteration () at
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f5ece04c61b in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=0x7f5e98000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007f5ecdff08ab in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(this=this@entry=0x7f5e9f3a3ba0, flags=..., flags@entry=...) at
../../include/QtCore/../../src/corelib/global/qflags.h:141
#6  0x00007f5ecde0a2c2 in QThread::exec() (this=<optimized out>) at
../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007f5e9d35107c in KCupsConnection::run() () at
/usr/lib/x86_64-linux-gnu/libkcupslib.so
#8  0x00007f5ecde0b45c in QThreadPrivate::start(void*) (arg=0x565066855050) at
thread/qthread_unix.cpp:329
#9  0x00007f5eccd5a609 in start_thread (arg=<optimized out>) at
pthread_create.c:477
#10 0x00007f5ecda89293 in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7f5eb28b0700 (LWP 1943)):
#0  0x00007f5ecda7f12b in __GI___select (nfds=44, readfds=0x7f5eb28afba0,
writefds=0x0, exceptfds=0x0, timeout=0x7f5eb28afb90) at
../sysdeps/unix/sysv/linux/select.c:41
#1  0x00007f5ec1f5b981 in  () at
/usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.460.91.03
#2  0x00007f5ec1f5946a in  () at
/usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.460.91.03
#3  0x00007f5eccd5a609 in start_thread (arg=<optimized out>) at
pthread_create.c:477
#4  0x00007f5ecda89293 in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7f5eb357d700 (LWP 1942)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0,
futex_word=0x56506578f954) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x56506578f900,
cond=0x56506578f928) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x56506578f928, mutex=0x56506578f900) at
pthread_cond_wait.c:638
#3  0x00007f5ecde115cb in QWaitConditionPrivate::wait(QDeadlineTimer)
(deadline=..., this=0x56506578f900) at thread/qwaitcondition_unix.cpp:146
#4  QWaitCondition::wait(QMutex*, QDeadlineTimer) (this=<optimized out>,
mutex=0x56506576b520, deadline=...) at thread/qwaitcondition_unix.cpp:225
#5  0x00007f5ecfa7ac24 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#6  0x00007f5ecfa7b099 in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#7  0x00007f5ecde0b45c in QThreadPrivate::start(void*) (arg=0x56506576b480) at
thread/qthread_unix.cpp:329
#8  0x00007f5eccd5a609 in start_thread (arg=<optimized out>) at
pthread_create.c:477
#9  0x00007f5ecda89293 in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f5eb8bfc700 (LWP 1936)):
#0  0x00007f5ece04ccda in postEventSourcePrepare (timeout=0x0,
s=0x7f5eac038470) at kernel/qeventdispatcher_glib.cpp:270
#1  postEventSourceCheck(GSource*) (source=0x7f5eac038470) at
kernel/qeventdispatcher_glib.cpp:270
#2  0x00007f5ecc327da1 in g_main_context_check () at
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f5ecc328312 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f5ecc3284a3 in g_main_context_iteration () at
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f5ece04c61b in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=0x7f5eac035d40, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#6  0x00007f5ecdff08ab in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(this=this@entry=0x7f5eb8bfbba0, flags=..., flags@entry=...) at
../../include/QtCore/../../src/corelib/global/qflags.h:141
#7  0x00007f5ecde0a2c2 in QThread::exec() (this=<optimized out>) at
../../include/QtCore/../../src/corelib/global/qflags.h:121
#8  0x00007f5ecf9b53fa in  () at /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#9  0x00007f5ecde0b45c in QThreadPrivate::start(void*) (arg=0x565065745180) at
thread/qthread_unix.cpp:329
#10 0x00007f5eccd5a609 in start_thread (arg=<optimized out>) at
pthread_create.c:477
#11 0x00007f5ecda89293 in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f5ebbfff700 (LWP 1781)):
#0  __libc_enable_asynccancel () at
../sysdeps/unix/sysv/linux/x86_64/cancellation.S:62
#1  0x00007f5ecda7cae7 in __GI___poll (fds=0x7f5eb4004a60, nfds=1, timeout=-1)
at ../sysdeps/unix/sysv/linux/poll.c:29
#2  0x00007f5ecc32836e in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f5ecc3284a3 in g_main_context_iteration () at
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f5ece04c61b in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=0x7f5eb4000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007f5ecdff08ab in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(this=this@entry=0x7f5ebbffebc0, flags=..., flags@entry=...) at
../../include/QtCore/../../src/corelib/global/qflags.h:141
#6  0x00007f5ecde0a2c2 in QThread::exec() (this=this@entry=0x5650646b4330) at
../../include/QtCore/../../src/corelib/global/qflags.h:121
#7  0x00007f5ecf61b549 in QQmlThreadPrivate::run() (this=0x5650646b4330) at
qml/ftw/qqmlthread.cpp:155
#8  0x00007f5ecde0b45c in QThreadPrivate::start(void*) (arg=0x5650646b4330) at
thread/qthread_unix.cpp:329
#9  0x00007f5eccd5a609 in start_thread (arg=<optimized out>) at
pthread_create.c:477
#10 0x00007f5ecda89293 in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f5ec3e74700 (LWP 1718)):
#0  0x00007f5ecda7caff in __GI___poll (fds=0x7f5ebc014dc0, nfds=1, timeout=-1)
at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f5ecc32836e in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f5ecc3284a3 in g_main_context_iteration () at
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f5ece04c61b in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=0x7f5ebc000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007f5ecdff08ab in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(this=this@entry=0x7f5ec3e73bb0, flags=..., flags@entry=...) at
../../include/QtCore/../../src/corelib/global/qflags.h:141
#5  0x00007f5ecde0a2c2 in QThread::exec() (this=this@entry=0x7f5ecea01d80
<(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at
../../include/QtCore/../../src/corelib/global/qflags.h:121
#6  0x00007f5ece97df4b in QDBusConnectionManager::run() (this=0x7f5ecea01d80
<(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at
qdbusconnection.cpp:179
#7  0x00007f5ecde0b45c in QThreadPrivate::start(void*) (arg=0x7f5ecea01d80
<(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at
thread/qthread_unix.cpp:329
#8  0x00007f5eccd5a609 in start_thread (arg=<optimized out>) at
pthread_create.c:477
#9  0x00007f5ecda89293 in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f5ec9bd19c0 (LWP 1612)):
[KCrash Handler]
#4  std::__atomic_base<QThreadData*>::load(std::memory_order) const
(__m=std::memory_order_relaxed, this=<error reading variable: Cannot access
memory at address 0x8>) at /usr/include/c++/9/bits/atomic_base.h:734
#5  std::atomic<QThreadData*>::load(std::memory_order) const
(__m=std::memory_order_relaxed, this=<error reading variable: Cannot access
memory at address 0x8>) at /usr/include/c++/9/atomic:519
#6 
QAtomicOps<QThreadData*>::loadRelaxed<QThreadData*>(std::atomic<QThreadData*>
const&) (_q_value=<error reading variable: Cannot access memory at address
0x8>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qatomic_cxx11.h:239
#7  QBasicAtomicPointer<QThreadData>::loadRelaxed() const (this=<error reading
variable: Cannot access memory at address 0x8>) at
/usr/include/x86_64-linux-gnu/qt5/QtCore/qbasicatomic.h:248
#8  QQmlNotifierEndpoint::connect(QObject*, int, QQmlEngine*, bool)
(this=this@entry=0x565067ff38b0, source=0x565068259540, sourceSignal=46,
engine=0x0, doNotify=doNotify@entry=true) at qml/qqmlnotifier.cpp:122
#9  0x00007f5ecf548f64 in QQmlVMEMetaObjectEndpoint::tryConnect()
(this=this@entry=0x565067ff38b0) at
../../include/QtQml/5.15.3/QtQml/private/../../../../../src/qml/qml/qqmlpropertydata_p.h:266
#10 0x00007f5ecf5491ca in QQmlVMEMetaObject::connectAlias(int)
(this=this@entry=0x565068610850, aliasId=aliasId@entry=1) at
qml/qqmlvmemetaobject.cpp:1294
#11 0x00007f5ecf54aa92 in QQmlVMEMetaObject::metaCall(QObject*,
QMetaObject::Call, int, void**) (this=0x565068610850, o=<optimized out>,
c=QMetaObject::ReadProperty, _id=<optimized out>, a=0x7fffdbedc810) at
qml/qqmlvmemetaobject.cpp:906
#12 0x00007f5ecf474cc5 in loadProperty(QV4::ExecutionEngine*, QObject*,
QQmlPropertyData const&) () at
../../include/QtQml/5.15.3/QtQml/private/../../../../../src/qml/qml/qqmlpropertydata_p.h:357
#13 0x00007f5eb0c7e993 in  ()
#14 0x0000000000000000 in  ()
[Inferior 1 (process 1612) detached]

Possible duplicates by query: bug 444352, bug 442475, bug 441365, bug 439498,
bug 430431.

Reported using DrKonqi

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to