Bug 412455 - Segfault of LabPlot2 when opening settings dropdown
Summary: Segfault of LabPlot2 when opening settings dropdown
Status: RESOLVED FIXED
Alias: None
Product: LabPlot2
Classification: Applications
Component: general (show other bugs)
Version: 2.6.0
Platform: Arch Linux Linux
: NOR crash
Target Milestone: ---
Assignee: Alexander Semke
URL:
Keywords: drkonqi
: 414032 416538 418963 (view as bug list)
Depends on:
Blocks:
 
Reported: 2019-09-29 20:31 UTC by waterlubber
Modified: 2020-04-09 20:17 UTC (History)
3 users (show)

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


Attachments
Screenshot of LabPlot version. (24.39 KB, image/png)
2019-10-24 22:32 UTC, waterlubber
Details

Note You need to log in before you can comment on or make changes to this bug.
Description waterlubber 2019-09-29 20:31:57 UTC
Application: labplot2 (2.6.0)

Qt Version: 5.13.1
Frameworks Version: 5.62.0
Operating System: Linux 5.3.1-zen1-1-zen x86_64
Distribution: "Arch Linux"

-- Information about the crash:
- What I was doing when the application crashed:
	Created a new project
	Scrolled around on the left menu thing a little
	Opened up the "settings" dropdown
	Crash
- Custom settings of the application:
	Notably, the system that LabPlot was installed on previously ran MATE. I switched it to KDE fairly recently. This might affect things somewhat.

The stacktrace mentions my graphics drivers, which is odd. I am running with an AMD RX 480 with the open source drivers (except for the OpenCL ones, which are proprietary.)

-- Backtrace:
Application: labplot2 (labplot2), signal: Segmentation fault
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f3932065840 (LWP 11547))]

Thread 18 (Thread 0x7f38e3fff700 (LWP 11564)):
#0  0x00007f3936894667 in poll () at /usr/lib/libc.so.6
#1  0x00007f393500c130 in  () at /usr/lib/libglib-2.0.so.0
#2  0x00007f393500c201 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#3  0x00007f3937defa1c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007f3937d964ec in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#5  0x00007f3937bc8385 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#6  0x00007f3936127b37 in  () at /usr/lib/libQt5DBus.so.5
#7  0x00007f3937bc95b0 in  () at /usr/lib/libQt5Core.so.5
#8  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#9  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 17 (Thread 0x7f3900ff9700 (LWP 11563)):
#0  0x00007f393678f415 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f39293989ec in  () at /usr/lib/dri/radeonsi_dri.so
#2  0x00007f39293985e8 in  () at /usr/lib/dri/radeonsi_dri.so
#3  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 16 (Thread 0x7f39017fa700 (LWP 11562)):
#0  0x00007f393678f415 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f39293989ec in  () at /usr/lib/dri/radeonsi_dri.so
#2  0x00007f39293985e8 in  () at /usr/lib/dri/radeonsi_dri.so
#3  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 15 (Thread 0x7f3901ffb700 (LWP 11561)):
#0  0x00007f393678f415 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f39293989ec in  () at /usr/lib/dri/radeonsi_dri.so
#2  0x00007f39293985e8 in  () at /usr/lib/dri/radeonsi_dri.so
#3  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 14 (Thread 0x7f39027fc700 (LWP 11560)):
#0  0x00007f393678f415 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f39293989ec in  () at /usr/lib/dri/radeonsi_dri.so
#2  0x00007f39293985e8 in  () at /usr/lib/dri/radeonsi_dri.so
#3  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 13 (Thread 0x7f3902ffd700 (LWP 11559)):
#0  0x00007f393678f415 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f39293989ec in  () at /usr/lib/dri/radeonsi_dri.so
#2  0x00007f39293985e8 in  () at /usr/lib/dri/radeonsi_dri.so
#3  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 12 (Thread 0x7f39037fe700 (LWP 11558)):
#0  0x00007f393678f415 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f39293989ec in  () at /usr/lib/dri/radeonsi_dri.so
#2  0x00007f39293985e8 in  () at /usr/lib/dri/radeonsi_dri.so
#3  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 11 (Thread 0x7f3903fff700 (LWP 11557)):
#0  0x00007f393678f415 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f39293989ec in  () at /usr/lib/dri/radeonsi_dri.so
#2  0x00007f39293985e8 in  () at /usr/lib/dri/radeonsi_dri.so
#3  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 10 (Thread 0x7f39208a0700 (LWP 11556)):
#0  0x00007f393678f415 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f39293989ec in  () at /usr/lib/dri/radeonsi_dri.so
#2  0x00007f39293985e8 in  () at /usr/lib/dri/radeonsi_dri.so
#3  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 9 (Thread 0x7f39210a1700 (LWP 11555)):
#0  0x00007f393678f415 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f39293989ec in  () at /usr/lib/dri/radeonsi_dri.so
#2  0x00007f39293985e8 in  () at /usr/lib/dri/radeonsi_dri.so
#3  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 8 (Thread 0x7f39218a2700 (LWP 11554)):
#0  0x00007f393678f415 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f39293989ec in  () at /usr/lib/dri/radeonsi_dri.so
#2  0x00007f39293985e8 in  () at /usr/lib/dri/radeonsi_dri.so
#3  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 7 (Thread 0x7f39220a3700 (LWP 11553)):
#0  0x00007f393678f415 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f39293989ec in  () at /usr/lib/dri/radeonsi_dri.so
#2  0x00007f39293985e8 in  () at /usr/lib/dri/radeonsi_dri.so
#3  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 6 (Thread 0x7f39228a4700 (LWP 11552)):
#0  0x00007f393678f415 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f39293989ec in  () at /usr/lib/dri/radeonsi_dri.so
#2  0x00007f39293985e8 in  () at /usr/lib/dri/radeonsi_dri.so
#3  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 5 (Thread 0x7f39230a5700 (LWP 11551)):
#0  0x00007f393678f415 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f39293989ec in  () at /usr/lib/dri/radeonsi_dri.so
#2  0x00007f39293985e8 in  () at /usr/lib/dri/radeonsi_dri.so
#3  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 4 (Thread 0x7f39238a6700 (LWP 11550)):
#0  0x00007f393678f415 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f39293989ec in  () at /usr/lib/dri/radeonsi_dri.so
#2  0x00007f39293985e8 in  () at /usr/lib/dri/radeonsi_dri.so
#3  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 3 (Thread 0x7f39241fc700 (LWP 11549)):
#0  0x00007f393678f415 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f39293989ec in  () at /usr/lib/dri/radeonsi_dri.so
#2  0x00007f39293985e8 in  () at /usr/lib/dri/radeonsi_dri.so
#3  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 2 (Thread 0x7f393124b700 (LWP 11548)):
#0  0x00007f3936894667 in poll () at /usr/lib/libc.so.6
#1  0x00007f3934aa2630 in  () at /usr/lib/libxcb.so.1
#2  0x00007f3934aa42db in xcb_wait_for_event () at /usr/lib/libxcb.so.1
#3  0x00007f3931bee101 in  () at /usr/lib/libQt5XcbQpa.so.5
#4  0x00007f3937bc95b0 in  () at /usr/lib/libQt5Core.so.5
#5  0x00007f393678957f in start_thread () at /usr/lib/libpthread.so.0
#6  0x00007f393689f0e3 in clone () at /usr/lib/libc.so.6

Thread 1 (Thread 0x7f3932065840 (LWP 11547)):
[KCrash Handler]
#6  0x00007f3939161fe5 in  () at /usr/lib/libKF5ConfigWidgets.so.5
#7  0x00007f3937dc3b70 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/libQt5Core.so.5
#8  0x00007f39388dee07 in QMenu::popup(QPoint const&, QAction*) () at /usr/lib/libQt5Widgets.so.5
#9  0x00007f39388e1099 in QMenu::internalDelayedPopup() () at /usr/lib/libQt5Widgets.so.5
#10 0x00007f3937dc43e5 in QObject::event(QEvent*) () at /usr/lib/libQt5Core.so.5
#11 0x00007f393879708b in QWidget::event(QEvent*) () at /usr/lib/libQt5Widgets.so.5
#12 0x00007f39388e657c in QMenu::event(QEvent*) () at /usr/lib/libQt5Widgets.so.5
#13 0x00007f39387534f5 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#14 0x00007f393875ce11 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#15 0x00007f3937d979c2 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#16 0x00007f3937deed9d in QTimerInfoList::activateTimers() () at /usr/lib/libQt5Core.so.5
#17 0x00007f3937def632 in  () at /usr/lib/libQt5Core.so.5
#18 0x00007f393500a3ae in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#19 0x00007f393500c1c1 in  () at /usr/lib/libglib-2.0.so.0
#20 0x00007f393500c201 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#21 0x00007f3937defa03 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#22 0x00007f3937d964ec in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#23 0x00007f3937d9e326 in QCoreApplication::exec() () at /usr/lib/libQt5Core.so.5
#24 0x00005611023d0b2f in  ()
#25 0x00007f39367c9ee3 in __libc_start_main () at /usr/lib/libc.so.6
#26 0x00005611023d300e in _start ()
[Inferior 1 (process 11547) detached]

Reported using DrKonqi
Comment 1 waterlubber 2019-09-29 20:34:41 UTC
I reinstalled Labplot and was able to reproduce the issue. It appears to occur when I hover over "Color Theme" in the settings dropdown.
Comment 2 Alexander Semke 2019-10-12 15:15:29 UTC
(In reply to waterlubber from comment #1)
> I reinstalled Labplot and was able to reproduce the issue. It appears to
> occur when I hover over "Color Theme" in the settings dropdown.
This looks like an issues with the Qt library on your computer. Do you also have the same problem with other Qt-based programs when opening the menus?
Comment 3 waterlubber 2019-10-12 17:12:30 UTC
I tried with some other KDE/QT applications, like KDenlive (with the same menu option) and KStars, and was not able to reproduce the issue there. It appears to be limited to LabPlot2.
Comment 4 Alexander Semke 2019-10-24 19:53:30 UTC
(In reply to waterlubber from comment #3)
> I tried with some other KDE/QT applications, like KDenlive (with the same
> menu option) and KStars, and was not able to reproduce the issue there. It
> appears to be limited to LabPlot2.
I manage to reproduce this only once on my computer. Hard to understand/debug unfortunately...

Is LabPlot linked to the same KF5 libraries as kdenlive?

Any chance to compile the new version released today (https://labplot.kde.org/2019/10/24/labplot-2-7-released/) and try again?
Comment 5 waterlubber 2019-10-24 22:32:51 UTC
Created attachment 123469 [details]
Screenshot of LabPlot version.
Comment 6 waterlubber 2019-10-24 22:40:26 UTC
(In reply to Alexander Semke from comment #4)
> (In reply to waterlubber from comment #3)
> > I tried with some other KDE/QT applications, like KDenlive (with the same
> > menu option) and KStars, and was not able to reproduce the issue there. It
> > appears to be limited to LabPlot2.
> I manage to reproduce this only once on my computer. Hard to
> understand/debug unfortunately...
> 
> Is LabPlot linked to the same KF5 libraries as kdenlive?
> 
> Any chance to compile the new version released today
> (https://labplot.kde.org/2019/10/24/labplot-2-7-released/) and try again?

I updated to the latest version from the Arch repos -- version 2.7 -- and experienced the same issue.
I also tried compiling the latest version and running from there -- same problem.

Would compiling with debug flags help? How would I go about that?
Comment 7 Alexander Semke 2019-10-25 06:30:53 UTC
(In reply to waterlubber from comment #6)
> (In reply to Alexander Semke from comment #4)
> > (In reply to waterlubber from comment #3)
> > > I tried with some other KDE/QT applications, like KDenlive (with the same
> > > menu option) and KStars, and was not able to reproduce the issue there. It
> > > appears to be limited to LabPlot2.
> > I manage to reproduce this only once on my computer. Hard to
> > understand/debug unfortunately...
> > 
> > Is LabPlot linked to the same KF5 libraries as kdenlive?
> > 
> > Any chance to compile the new version released today
> > (https://labplot.kde.org/2019/10/24/labplot-2-7-released/) and try again?
> 
> I updated to the latest version from the Arch repos -- version 2.7 -- and
> experienced the same issue.
> I also tried compiling the latest version and running from there -- same
> problem.
> 
> Would compiling with debug flags help? How would I go about that?
Your system seems to have already some debug symbols installed. From the backtrace you pasted in your first comment, the crash happens in Thread 1 and the last frames are

#6  0x00007f3939161fe5 in  () at /usr/lib/libKF5ConfigWidgets.so.5
#7  0x00007f3937dc3b70 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/libQt5Core.so.5
#8  0x00007f39388dee07 in QMenu::popup(QPoint const&, QAction*) () at /usr/lib/libQt5Widgets.so.5
#9  0x00007f39388e1099 in QMenu::internalDelayedPopup() () at /usr/lib/libQt5Widgets.so.5
 
It crashes in KF5ConfigWidgets somewhere. We miss the debug information here so I cannot say what is causing the problem here. Either we get the debug symbols for KF5ConfigWidgets on your system or I can try to reproduce it locally or try to see from the code what could cause such a problem.

Just to double confirm, kdenlinve that doesn't have this problem is also using KDE Frameworks 5.63, right?
Comment 8 waterlubber 2019-10-25 23:54:57 UTC
(In reply to Alexander Semke from comment #7)
> (In reply to waterlubber from comment #6)
> > (In reply to Alexander Semke from comment #4)
> > > (In reply to waterlubber from comment #3)
> > > > I tried with some other KDE/QT applications, like KDenlive (with the same
> > > > menu option) and KStars, and was not able to reproduce the issue there. It
> > > > appears to be limited to LabPlot2.
> > > I manage to reproduce this only once on my computer. Hard to
> > > understand/debug unfortunately...
> > > 
> > > Is LabPlot linked to the same KF5 libraries as kdenlive?
> > > 
> > > Any chance to compile the new version released today
> > > (https://labplot.kde.org/2019/10/24/labplot-2-7-released/) and try again?
> > 
> > I updated to the latest version from the Arch repos -- version 2.7 -- and
> > experienced the same issue.
> > I also tried compiling the latest version and running from there -- same
> > problem.
> > 
> > Would compiling with debug flags help? How would I go about that?
> Your system seems to have already some debug symbols installed. From the
> backtrace you pasted in your first comment, the crash happens in Thread 1
> and the last frames are
> 
> #6  0x00007f3939161fe5 in  () at /usr/lib/libKF5ConfigWidgets.so.5
> #7  0x00007f3937dc3b70 in QMetaObject::activate(QObject*, int, int, void**)
> () at /usr/lib/libQt5Core.so.5
> #8  0x00007f39388dee07 in QMenu::popup(QPoint const&, QAction*) () at
> /usr/lib/libQt5Widgets.so.5
> #9  0x00007f39388e1099 in QMenu::internalDelayedPopup() () at
> /usr/lib/libQt5Widgets.so.5
>  
> It crashes in KF5ConfigWidgets somewhere. We miss the debug information here
> so I cannot say what is causing the problem here. Either we get the debug
> symbols for KF5ConfigWidgets on your system or I can try to reproduce it
> locally or try to see from the code what could cause such a problem.
> 
> Just to double confirm, kdenlinve that doesn't have this problem is also
> using KDE Frameworks 5.63, right?

Yes, kdenlive shows that it's running on 5.63.0.

I also tried moving ~/.config/labplot2rc to see if it was a configuration problem, but the issue remained.
Comment 9 Alexander Semke 2019-11-13 11:43:51 UTC
*** Bug 414032 has been marked as a duplicate of this bug. ***
Comment 10 Alexander Semke 2020-01-23 21:21:11 UTC
*** Bug 416538 has been marked as a duplicate of this bug. ***
Comment 11 Alexander Semke 2020-01-25 08:51:20 UTC
I've got it reproducible now. It always crashed in the clang debug build with ASAN activated.
Comment 12 Alexander Semke 2020-01-25 09:28:48 UTC
Git commit 20d05a9b43462a6c5574ed96626be9f93a3c1e88 by Alexander Semke.
Committed on 25/01/2020 at 09:28.
Pushed by asemke into branch 'master'.

Don't crash (sporadically) when openning the color scheme menu.
FIXED-IN: 2.8

M  +5    -5    src/kdefrontend/MainWin.cpp
M  +9    -5    src/kdefrontend/MainWin.h

https://invent.kde.org/kde/labplot/commit/20d05a9b43462a6c5574ed96626be9f93a3c1e88
Comment 13 Alexander Semke 2020-04-09 20:17:41 UTC
*** Bug 418963 has been marked as a duplicate of this bug. ***