Bug 427624

Summary: KDE Partition Manager gets stuck in memory on close
Product: [Applications] partitionmanager Reporter: Patrick Silva <bugseforuns>
Component: generalAssignee: Andrius Štikonas <andrius>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: Neon   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Patrick Silva 2020-10-13 09:31:34 UTC
STEPS TO REPRODUCE
1. open kpm
2. enter you password
3. wait kpm to scan your devices
4. close kpm

OBSERVED RESULT
kpm gets stuck in memory and can not to be reopened until we kill its process manually

EXPECTED RESULT
kpm should be closed correctly

SOFTWARE/OS VERSIONS
Operating System: KDE neon Unstable Edition
KDE Plasma Version: 5.20.80
KDE Frameworks Version: 5.76.0
Qt Version: 5.15.0
Comment 1 Andrius Štikonas 2020-10-13 10:56:02 UTC
Can't reproduce it.

Can you post the backtrace?
Comment 2 Patrick Silva 2020-10-13 11:32:55 UTC
Thread 9 (Thread 0x7fffd34cd700 (LWP 1847)):
#0  0x00007ffff61c8aff in __GI___poll (fds=0x5555559acb50, nfds=2, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007ffff4e6a1ae in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007ffff4e6a533 in g_main_loop_run () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fffd3eddeda in  () at /lib/x86_64-linux-gnu/libgio-2.0.so.0
#4  0x00007ffff4e93931 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007ffff5760609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007ffff61d5293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 8 (Thread 0x7fffd3cce700 (LWP 1846)):
#0  0x00007ffff61c8aff in __GI___poll (fds=0x55555586f510, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007ffff4e6a1ae in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007ffff4e6a2e3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007ffff4e6a331 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007ffff4e93931 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007ffff5760609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#6  0x00007ffff61d5293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 7 (Thread 0x7fffe88ce700 (LWP 1845)):
#0  0x00007ffff61c8aff in __GI___poll (fds=0x7fffd8004e10, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007ffff4e6a1ae in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007ffff4e6a2e3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007ffff6790e92 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fffd8000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#4  0x00007ffff67351bb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fffe88cdd80, flags=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#5  0x00007ffff7f4b4ef in  () at /lib/x86_64-linux-gnu/libkpmcore.so.10
#6  0x00007ffff655420c in QThreadPrivate::start(void*) (arg=0x7fffec00fca0) at thread/qthread_unix.cpp:342
#7  0x00007ffff5760609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#8  0x00007ffff61d5293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 6 (Thread 0x7fffe90e1700 (LWP 1844)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55555583a708) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55555583a6b8, cond=0x55555583a6e0) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x55555583a6e0, mutex=0x55555583a6b8) at pthread_cond_wait.c:638
#3  0x00007fffeb07197b in cnd_wait (mtx=0x55555583a6b8, cond=0x55555583a6e0) at ../include/c11/threads_posix.h:155
#4  util_queue_thread_func (input=input@entry=0x555555a482c0) at ../src/util/u_queue.c:275
#5  0x00007fffeb07158b in impl_thrd_routine (p=<optimized out>) at ../include/c11/threads_posix.h:87
#6  0x00007ffff5760609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#7  0x00007ffff61d5293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 5 (Thread 0x7fffe98e2700 (LWP 1843)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55555583a708) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55555583a6b8, cond=0x55555583a6e0) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x55555583a6e0, mutex=0x55555583a6b8) at pthread_cond_wait.c:638
#3  0x00007fffeb07197b in cnd_wait (mtx=0x55555583a6b8, cond=0x55555583a6e0) at ../include/c11/threads_posix.h:155
#4  util_queue_thread_func (input=input@entry=0x555555a037a0) at ../src/util/u_queue.c:275
#5  0x00007fffeb07158b in impl_thrd_routine (p=<optimized out>) at ../include/c11/threads_posix.h:87
#6  0x00007ffff5760609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#7  0x00007ffff61d5293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7fffea0e3700 (LWP 1842)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55555583a708) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55555583a6b8, cond=0x55555583a6e0) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x55555583a6e0, mutex=0x55555583a6b8) at pthread_cond_wait.c:638
#3  0x00007fffeb07197b in cnd_wait (mtx=0x55555583a6b8, cond=0x55555583a6e0) at ../include/c11/threads_posix.h:155
#4  util_queue_thread_func (input=input@entry=0x555555a21a50) at ../src/util/u_queue.c:275
#5  0x00007fffeb07158b in impl_thrd_routine (p=<optimized out>) at ../include/c11/threads_posix.h:87
#6  0x00007ffff5760609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#7  0x00007ffff61d5293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7fffea8e4700 (LWP 1841)):
#0  futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x55555583a708) at ../sysdeps/nptl/futex-internal.h:183
#1  __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x55555583a6b8, cond=0x55555583a6e0) at pthread_cond_wait.c:508
#2  __pthread_cond_wait (cond=0x55555583a6e0, mutex=0x55555583a6b8) at pthread_cond_wait.c:638
#3  0x00007fffeb07197b in cnd_wait (mtx=0x55555583a6b8, cond=0x55555583a6e0) at ../include/c11/threads_posix.h:155
#4  util_queue_thread_func (input=input@entry=0x55555597a130) at ../src/util/u_queue.c:275
#5  0x00007fffeb07158b in impl_thrd_routine (p=<optimized out>) at ../include/c11/threads_posix.h:87
#6  0x00007ffff5760609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#7  0x00007ffff61d5293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7ffff1301700 (LWP 1840)):
#0  0x00007ffff61c8aff in __GI___poll (fds=0x7fffec013720, nfds=4, timeout=863974327) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007ffff4e6a1ae in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007ffff4e6a2e3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007ffff6790e92 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7fffec000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#4  0x00007ffff67351bb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffff1300d70, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#5  0x00007ffff6553082 in QThread::exec() (this=this@entry=0x7ffff6034d80 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#6  0x00007ffff5fb1f2b in QDBusConnectionManager::run() (this=0x7ffff6034d80 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:179
#7  0x00007ffff655420c in QThreadPrivate::start(void*) (arg=0x7ffff6034d80 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:342
#8  0x00007ffff5760609 in start_thread (arg=<optimized out>) at pthread_create.c:477
#9  0x00007ffff61d5293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7ffff2e10300 (LWP 1835)):
#0  0x00007ffff61c8aff in __GI___poll (fds=0x555555a3ed60, nfds=2, timeout=29995) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007ffff4e6a1ae in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007ffff4e6a2e3 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007ffff6790e92 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x5555556a9180, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#4  0x00007ffff67351bb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fffffffdc90, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:141
#5  0x00007ffff673d354 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#6  0x0000555555585b39 in main ()
Comment 3 Patrick Silva 2021-01-16 11:42:48 UTC
no longer reproducible on neon unstable.

Operating System: KDE neon Unstable Edition
KDE Plasma Version: 5.20.80
KDE Frameworks Version: 5.79.0
Qt Version: 5.15.2
Kernel Version: 5.4.0-60-generic