Bug 434384

Summary: Crash when changing screen edges options on Wayland
Product: [Applications] systemsettings Reporter: Bharadwaj Raju <bharadwaj.raju777>
Component: kcm_kwinscreenedgesAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED DUPLICATE    
Severity: crash CC: bernie, justin.zobel, plasma-bugs, shakur_17
Priority: NOR    
Version: 5.21.2   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: DrKonqi backtrace of systemsettings
New crash information added by DrKonqi

Description Bharadwaj Raju 2021-03-14 05:07:59 UTC
Application: systemsettings5 (5.21.2)

Qt Version: 5.15.2
Frameworks Version: 5.79.0
Operating System: Linux 5.11.6-arch1-1 x86_64
Windowing System: Wayland
Drkonqi Version: 5.21.2
Distribution: "Arch Linux"

-- Information about the crash:
Changed some setting in Screen Edges, then hit Apply. Then systemsettings crashed.

The crash can be reproduced every time.

-- Backtrace:
Application: System Settings (systemsettings5), signal: Segmentation fault

[KCrash Handler]
#4  0x0000000000000000 in ?? ()
#5  0x00007fa6b009c683 in QWaylandClientExtensionPrivate::handleRegistryGlobal(void*, wl_registry*, unsigned int, QString const&, unsigned int) () from /usr/lib/libQt5WaylandClient.so.5
#6  0x00007fa6b0084b32 in QtWaylandClient::QWaylandDisplay::registry_global(unsigned int, QString const&, unsigned int) () from /usr/lib/libQt5WaylandClient.so.5
#7  0x00007fa6b00a5dee in QtWayland::wl_registry::handle_global(void*, wl_registry*, unsigned int, char const*, unsigned int) () from /usr/lib/libQt5WaylandClient.so.5
#8  0x00007fa6adb78acd in ?? () from /usr/lib/libffi.so.7
#9  0x00007fa6adb7803a in ?? () from /usr/lib/libffi.so.7
#10 0x00007fa6b000afe4 in ?? () from /usr/lib/libwayland-client.so.0
#11 0x00007fa6b0007563 in ?? () from /usr/lib/libwayland-client.so.0
#12 0x00007fa6b0008cac in wl_display_dispatch_queue_pending () from /usr/lib/libwayland-client.so.0
#13 0x00007fa6b008444d in QtWaylandClient::QWaylandDisplay::flushRequests() () from /usr/lib/libQt5WaylandClient.so.5
#14 0x00007fa6b2500dc0 in ?? () from /usr/lib/libQt5Core.so.5
#15 0x00007fa6b25042f0 in QSocketNotifier::activated(QSocketDescriptor, QSocketNotifier::Type, QSocketNotifier::QPrivateSignal) () from /usr/lib/libQt5Core.so.5
#16 0x00007fa6b2504afd in QSocketNotifier::event(QEvent*) () from /usr/lib/libQt5Core.so.5
#17 0x00007fa6b308c752 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#18 0x00007fa6b24c9a2a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#19 0x00007fa6b25232a6 in ?? () from /usr/lib/libQt5Core.so.5
#20 0x00007fa6b0196b84 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#21 0x00007fa6b01eac21 in ?? () from /usr/lib/libglib-2.0.so.0
#22 0x00007fa6b01953b1 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#23 0x00007fa6b2522691 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#24 0x00007fa6b24c83ac in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#25 0x00007fa6b24d0844 in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#26 0x0000563886fe3960 in ?? ()
#27 0x00007fa6b1d4cb25 in __libc_start_main () from /usr/lib/libc.so.6
#28 0x0000563886fe447e in _start ()
[Inferior 1 (process 27833) detached]
Comment 1 Justin Zobel 2021-03-15 00:21:04 UTC
Thank you for the crash report. In order to diagnose this issue as quickly as possible can you please ensure you have all debug symbols installed.

Instructions on how to do this for several distributions are provided at https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports#Install_debugging_packages

Once you have all the debug symbols installed (see lines where it has "in ?? () from" for hints on which packages are needed) please reproduce the crash and upload the new backtrace, thank you.

I've set this bug to NEEDSINFO. Once you have added the required information please change the bug back to REPORTED so we know it's ready for investigation or RESOLVED/WORKSFORME if the issue is now resolved.
Comment 2 Bharadwaj Raju 2021-03-15 02:35:54 UTC
Sure, but I use Arch right now, so I can't really get easy access to debug symbols. I'll boot a Neon ISO sometime and see if I can reproduce it and get a proper stack trace there.
Comment 3 Justin Zobel 2021-03-15 04:41:03 UTC
Thanks, I'll leave this in needsinfo status for now then. It will close itself in 30 days if no further info is provided.
Comment 4 Bharadwaj Raju 2021-03-16 11:25:24 UTC
Created attachment 136732 [details]
DrKonqi backtrace of systemsettings

Crash reproduced on KDE Neon User edition. I managed to get a backtrace which DrKonqi described as "useful", I hope it really is useful.
Comment 5 Justin Zobel 2021-03-16 11:55:08 UTC
Thanks. That backtrace looks good, I'll set it to reported for a developer to investigate.
Comment 6 Bharadwaj Raju 2021-03-17 17:19:22 UTC
System Settings also crashed when I applied window rules. This might be a more general pattern -- settings which affect KWin cause System Settings to crash. Later I'll get a backtrace for that too.
Comment 7 Justin Zobel 2021-03-17 21:18:44 UTC
(In reply to Bharadwaj Raju from comment #6)
> System Settings also crashed when I applied window rules. This might be a
> more general pattern -- settings which affect KWin cause System Settings to
> crash. Later I'll get a backtrace for that too.

When you do please create a separate bug report unless they are related, thanks.
Comment 8 Bernie Innocenti 2021-04-15 07:32:52 UTC
I got a crash with similar stacktrace while clicking Apply in the kwinoptions kcm (happened twice in a row):

Application: System Settings (systemsettings5), signal: Segmentation fault
Content of s_kcrashErrorMessage: [Current thread is 1 (LWP 143174)]
[KCrash Handler]
#5  0x00007f70ad5e1d53 in QWaylandClientExtensionPrivate::handleRegistryGlobal(void*, wl_registry*, unsigned int, QString const&, unsigned int) () at /usr/lib/libQt5WaylandClient.so.5
#6  0x00007f70ad5c9b02 in QtWaylandClient::QWaylandDisplay::registry_global(unsigned int, QString const&, unsigned int) () at /usr/lib/libQt5WaylandClient.so.5
#7  0x00007f70ad5eb4be in QtWayland::wl_registry::handle_global(void*, wl_registry*, unsigned int, char const*, unsigned int) () at /usr/lib/libQt5WaylandClient.so.5
#8  0x00007f70ac369acd in  () at /usr/lib/libffi.so.7
#9  0x00007f70ac36903a in  () at /usr/lib/libffi.so.7
#10 0x00007f70ad54ffe4 in  () at /usr/lib/libwayland-client.so.0
#11 0x00007f70ad54c563 in  () at /usr/lib/libwayland-client.so.0
#12 0x00007f70ad54dcac in wl_display_dispatch_queue_pending () at /usr/lib/libwayland-client.so.0
#13 0x00007f70ad5c941d in QtWaylandClient::QWaylandDisplay::flushRequests() () at /usr/lib/libQt5WaylandClient.so.5
#14 0x00007f70ae14e9d0 in  () at /usr/lib/libQt5Core.so.5
#15 0x00007f70ae151f20 in QSocketNotifier::activated(QSocketDescriptor, QSocketNotifier::Type, QSocketNotifier::QPrivateSignal) () at /usr/lib/libQt5Core.so.5
#16 0x00007f70ae15272d in QSocketNotifier::event(QEvent*) () at /usr/lib/libQt5Core.so.5
#17 0x00007f70aedf5762 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#18 0x00007f70ae11763a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#19 0x00007f70ae170d56 in  () at /usr/lib/libQt5Core.so.5
#20 0x00007f70ac57602c in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#21 0x00007f70ac5c9b59 in  () at /usr/lib/libglib-2.0.so.0
#22 0x00007f70ac573781 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#23 0x00007f70ae170141 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#24 0x00007f70ae115f9c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#25 0x00007f70ae11e454 in QCoreApplication::exec() () at /usr/lib/libQt5Core.so.5
#26 0x00005655108e2889 in main(int, char**) (argc=1, argv=0x7fff6c0cb988) at /home/bernie/kde/src/systemsettings/app/main.cpp:208
[Inferior 1 (process 143174) detached]
Comment 9 Bernie Innocenti 2021-04-15 07:33:25 UTC
This is happening in systemsettings built from git master, btw.
Comment 10 Ramazan 2021-04-29 21:48:38 UTC
Created attachment 138014 [details]
New crash information added by DrKonqi

systemsettings5 (5.21.3) using Qt 5.15.2

- What I was doing when the application crashed:

Changing setting window borders on wayland kde

-- Backtrace (Reduced):
#4  0x00007f4638de3baa in Kirigami::PlatformTheme::palette() const () from /lib64/libKF5Kirigami2.so.5
#5  0x00007f463899a55f in PlasmaDesktopTheme::iconFromTheme(QString const&, QColor const&) () from /usr/lib64/qt5/plugins/kf5/kirigami/org.kde.desktop.so
#6  0x00007f4659e90f07 in QWaylandClientExtensionPrivate::handleRegistryGlobal(void*, wl_registry*, unsigned int, QString const&, unsigned int) () from /lib64/libQt5WaylandClient.so.5
#7  0x00007f4659e7d319 in QtWaylandClient::QWaylandDisplay::registry_global(unsigned int, QString const&, unsigned int) () from /lib64/libQt5WaylandClient.so.5
#8  0x00007f4659e99033 in QtWayland::wl_registry::handle_global(void*, wl_registry*, unsigned int, char const*, unsigned int) () from /lib64/libQt5WaylandClient.so.5
Comment 11 Bernie Innocenti 2021-04-30 04:40:20 UTC
(In reply to Ramazan from comment #10)
> Created attachment 138014 [details]
> New crash information added by DrKonqi
> 
> systemsettings5 (5.21.3) using Qt 5.15.2
> 
> - What I was doing when the application crashed:
> 
> Changing setting window borders on wayland kde

Judging from the stack trace, this is probably unrelated.
Could you please file a spearate bug with steps to reproduce?
Comment 12 Bharadwaj Raju 2021-05-10 10:23:22 UTC

*** This bug has been marked as a duplicate of bug 414834 ***