KDAB / hotspot

The Linux perf GUI for performance analysis.
4.05k stars 250 forks source link

SIGSEGV 1.5.1 when closing during perf reading #654

Closed GitMensch closed 2 months ago

GitMensch commented 3 months ago

Describe the bug SIGSEGV instead of clean exit.

To Reproduce Start hotspot (in my case from appimage) with a perf file, then close the window during read.

Expected behavior Clean exit

Version Info (please complete the following information):

Additional context While sady add-symbol-file /tmp/debug/libQt5Core.so.5.15.13.debug did not help...

0x00007f8f917ba301 in poll () from /usr/lib64/libc.so.6
add symbol table from file "/tmp/hotspot-debuginfo-v1.5.0-27-ge4ac31e/usr/bin/hotspot"
(y or n) y
Reading symbols from /tmp/hotspot-debuginfo-v1.5.0-27-ge4ac31e/usr/bin/hotspot...
add symbol table from file "/tmp/debug/libQt5XcbQpa.so.5.15.13.debug"
(y or n) y
Reading symbols from /tmp/debug/libQt5XcbQpa.so.5.15.13.debug...
add symbol table from file "/tmp/debug/libQt5Core.so.5.15.13.debug"
(y or n) y
Reading symbols from /tmp/debug/libQt5Core.so.5.15.13.debug...
(gdb) c
Continuing.

Thread 15 "GlobalQueue[04]" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7f8f4bfff700 (LWP 2858567)]
0x00007f8f9267740f in ?? () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Core.so.5
(gdb) bt
#0  0x00007f8f9267740f in ?? () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Core.so.5
#1  0x0000000000443f75 in months_data ()
#2  0x0000000000451c62 in months_data ()
#3  0x00007f8f926778ae in ?? () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Core.so.5
#4  0x00007f8f925b5001 in QProcess::errorOccurred(QProcess::ProcessError) () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Core.so.5
#5  0x00007f8f925ba385 in ?? () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Core.so.5
#6  0x00007f8f925ba51e in ?? () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Core.so.5
#7  0x00007f8f926778dd in ?? () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Core.so.5
#8  0x00007f8f9267abef in QSocketNotifier::activated(QSocketDescriptor, QSocketNotifier::Type, QSocketNotifier::QPrivateSignal) () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Core.so.5
#9  0x00007f8f9267b2eb in QSocketNotifier::event(QEvent*) () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Core.so.5
#10 0x00007f8f93194a5f in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Widgets.so.5
#11 0x00007f8f9264347a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Core.so.5
#12 0x00007f8f92697d6d in ?? () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Core.so.5
#13 0x00007f8f8ce175bf in ?? () from /tmp/.mount_hotspoFhGyRT/usr/lib/libglib-2.0.so.0
#14 0x00007f8f8ce18432 in g_main_context_dispatch () from /tmp/.mount_hotspoFhGyRT/usr/lib/libglib-2.0.so.0
#15 0x00007f8f8ce18616 in ?? () from /tmp/.mount_hotspoFhGyRT/usr/lib/libglib-2.0.so.0
#16 0x00007f8f8ce186da in g_main_context_iteration () from /tmp/.mount_hotspoFhGyRT/usr/lib/libglib-2.0.so.0
#17 0x00007f8f926972a6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Core.so.5
#18 0x00007f8f92641ffb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Core.so.5
#19 0x00000000004568dc in locale_data ()
#20 0x00007f8f95340fe9 in ThreadWeaver::Executor::run(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /tmp/.mount_hotspoFhGyRT/usr/lib/libKF5ThreadWeaver.so.5
#21 0x00007f8f95341ca0 in ThreadWeaver::Job::execute(QSharedPointer<ThreadWeaver::JobInterface> const&, ThreadWeaver::Thread*) () from /tmp/.mount_hotspoFhGyRT/usr/lib/libKF5ThreadWeaver.so.5
#22 0x00007f8f9534624e in ThreadWeaver::Thread::run() () from /tmp/.mount_hotspoFhGyRT/usr/lib/libKF5ThreadWeaver.so.5
#23 0x00007f8f9246195b in ?? () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Core.so.5
#24 0x00007f8f90f1f1ca in start_thread () from /usr/lib64/libpthread.so.0
#25 0x00007f8f916cfe73 in clone () from /usr/lib64/libc.so.6
Thread 1 (Thread 0x7f8f87d05980 (LWP 2858067) "hotspot"):
#0  0x00007f8f90f25848 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /usr/lib64/libpthread.so.0
#1  0x00007f8f92467468 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Core.so.5
#2  0x00007f8f9534720b in ThreadWeaver::Weaver::finish_p() () from /tmp/.mount_hotspoFhGyRT/usr/lib/libKF5ThreadWeaver.so.5
#3  0x00007f8f95347963 in ThreadWeaver::Weaver::finish() () from /tmp/.mount_hotspoFhGyRT/usr/lib/libKF5ThreadWeaver.so.5
#4  0x00007f8f95347481 in ThreadWeaver::Weaver::shutDown_p() () from /tmp/.mount_hotspoFhGyRT/usr/lib/libKF5ThreadWeaver.so.5
#5  0x00007f8f9264534a in qt_call_post_routines() () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Core.so.5
#6  0x00007f8f931950a6 in QApplication::~QApplication() () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Widgets.so.5
#7  0x00007f8f931954e9 in QApplication::~QApplication() () from /tmp/.mount_hotspoFhGyRT/usr/lib/libQt5Widgets.so.5
#8  0x0000000000442e3e in months_data ()
#9  0x00007f8f916d0d85 in __libc_start_main () from /usr/lib64/libc.so.6
#10 0x0000000000443384 in months_data ()