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

            Bug ID: 512451
           Summary: systemsettings crashes when clicking on "About this
                    system"
    Classification: Applications
           Product: systemsettings
      Version First 6.5.2
       Reported In:
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: generic-crash
          Assignee: [email protected]
          Reporter: [email protected]
  Target Milestone: ---

Created attachment 187042
  --> https://bugs.kde.org/attachment.cgi?id=187042&action=edit
stderr output when clicking "About this System"

SUMMARY

After plasmashell has crashed and been restarted, clicking on "About this
System" in systemsettings triggers an application crash with the stderr output
copied below.  This does NOT happen when I first open a brand-new Plasma
session, but it happens EVERY TIME I open systemsettings after I first wait for
plasmashell to crash (see #512448) and then run "plasmashell --replace".  I'm
not sure the crash is due to the replacement plasmashell itself, but probably
triggered by whatever inconsistency in graphics pipeline state triggered the
original plasmashell crash.

Nevertheless, it's hard to understand why the "About this System" module would
be so much more fragile than the others.  Every other kcm module, including
"Display & Monitor", continues to work normally after a plasmashell crash &
restart.  I haven't yet inspected the code, but it seems likely that there are
probably some unwarranted assumptions made (e.g. ignoring error codes or
dereferencing a null pointer) when retrieving graphics pipeline info for the
"About" display.

Interestingly, if I start systemsettings with the command "systemsettings
kcm_about-distro", the "About this system" panel displays normally, with all
information filled in (KDE Plasma Version: 6.5.2, KDE Frameworks Version:
6.20.0, Qt Version: 6.10.0, Kernel Version: 6.16.12 (64-bit), Graphics
Platform: Wayland).  However, if I click to another module, and then back to
"About this System", I get the crash.

Finally, it would probably be useful to add "kcm_about" as a component under
which bugs in the systemsettings product may be filed (it does not appear in
the current list).

STEPS TO REPRODUCE
1. Start a Plasma session
2. Open systemsettings, click on "About this System", observe system
information
3. Wait for plasmashell to crash (cf. #512448)
4. Run "plasmashell --replace" to restore most Plasma functionality
5. Open systemsettings again
6. Explore other modules, observe normal behavior
7. Click on "About this System"
8. Observe an immediate application crash

OBSERVED RESULT
systemsettings crashes with a segmentation fault after dumping the contents of
45 different shader scripts (many of which are identical to each other) to
stderr (see attachment)

EXPECTED RESULT
systemsettings should not crash when attempting to view system information. 
Additionally, after systemsettings has reported failed compilation of one
shader script, it's probably unnecessary to keep reproducing the contents of
every failed script unless the user has specifically requested additional
debugging information.  A note like "*** Failed to compile 44 additional
shaders, use --dump-all to see details" would be adequate and improve the
signal/noise ratio. 

SOFTWARE/OS VERSIONS
Linux: 6.16.12
KDE Plasma: 6.5.2 
KDE Frameworks: 6.20.0
Qt:  6.10.0
Wayland: 1.24
Graphics backend: in-kernel amdgpu driver, Mesa 25.3.0

ADDITIONAL INFORMATION:
When I first start systemsettings with no arguments, I get the following on
stderr:

kf.kirigami.platform: Failed to find a Kirigami platform plugin for style
"Fusion"
qrc:/kcm/kcm_landingpage/main.qml:26:5: QML FormLayout: Binding loop detected
for property "wideMode":
qrc:/qt/qml/org/kde/kirigami/layouts/FormLayout.qml:72:5
qrc:/kcm/kcm_landingpage/main.qml:26:5: QML FormLayout: Binding loop detected
for property "wideMode":
qrc:/qt/qml/org/kde/kirigami/layouts/FormLayout.qml:72:5

If I start it as "systemsettings kcm_about-distro", I get:

kf.kirigami.platform: Failed to find a Kirigami platform plugin for style
"Fusion"
Physical device 0: 'AMD Radeon RX 6600 (RADV NAVI23)' 25.3.0 (api 1.4.328
vendor 0x1002 device 0x73FF type 2)
Physical device 0: 'llvmpipe (LLVM 21.1.5, 256 bits)' 25.3.0 (api 1.4.328
vendor 0x10005 device 0x0 type 4)
excess llvmpipe detected, ignoring
qrc:/kcm/kcm_about-distro/main.qml:76:9: QML FormLayout: Binding loop detected
for property "wideMode":
qrc:/qt/qml/org/kde/kirigami/layouts/FormLayout.qml:72:5
kf.auth: Action "org.kde.kinfocenter.dmidecode.systeminformation" has no
parentWindow, assuming QQuickWidgetOffscreenWindow(0x146ce050,
name="QQuickWidgetOffscreenWindow")

When I click on "Display & Monitor", I get the following on stderr, but the
configuration module appears to function normally:

qrc:/kcm/kcm_kscreen/RotationButton.qml:21:5: QML RotationButton: Binding loop
detected for property "height"
qrc:/kcm/kcm_kscreen/RotationButton.qml:21:5: QML RotationButton: Binding loop
detected for property "height"
qrc:/kcm/kcm_kscreen/RotationButton.qml:21:5: QML RotationButton: Binding loop
detected for property "height"
qrc:/kcm/kcm_kscreen/RotationButton.qml:21:5: QML RotationButton: Binding loop
detected for property "height"
qrc:/kcm/kcm_kscreen/RotationButton.qml:21:5: QML RotationButton: Binding loop
detected for property "height"
qrc:/kcm/kcm_kscreen/RotationButton.qml:21:5: QML RotationButton: Binding loop
detected for property "height"
qrc:/kcm/kcm_kscreen/RotationButton.qml:21:5: QML RotationButton: Binding loop
detected for property "height"
qrc:/kcm/kcm_kscreen/RotationButton.qml:21:5: QML RotationButton: Binding loop
detected for property "height"
qrc:/kcm/kcm_kscreen/RotationButton.qml:21:5: QML RotationButton: Binding loop
detected for property "height"
qrc:/kcm/kcm_kscreen/RotationButton.qml:21:5: QML RotationButton: Binding loop
detected for property "height"
qrc:/kcm/kcm_kscreen/RotationButton.qml:21:5: QML RotationButton: Binding loop
detected for property "height"
qrc:/kcm/kcm_kscreen/RotationButton.qml:21:5: QML RotationButton: Binding loop
detected for property "height"
qrc:/kcm/kcm_kscreen/RotationButton.qml:21:5: QML RotationButton: Binding loop
detected for property "height"
qrc:/kcm/kcm_kscreen/RotationButton.qml:21:5: QML RotationButton: Binding loop
detected for property "height"
qrc:/kcm/kcm_kscreen/RotationButton.qml:21:5: QML RotationButton: Binding loop
detected for property "height"
qrc:/kcm/kcm_kscreen/RotationButton.qml:21:5: QML RotationButton: Binding loop
detected for property "height"

As soon as I click on "About this System", I get the errors in the attached
file, closing out with

Failed to build graphics pipeline state
kf.auth: Action "org.kde.kinfocenter.dmidecode.systeminformation" has no
parentWindow, assuming QWidgetWindow(0xacc2d20, name="MainWindow#1Window")
Segmentation fault         systemsettings

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

Reply via email to