| Summary: | App Crashes Upon Start | ||
|---|---|---|---|
| Product: | [Applications] plasma-systemmonitor | Reporter: | TheNormGuy <86f609a3> |
| Component: | general | Assignee: | KSysGuard Developers <ksysguard-bugs> |
| Status: | RESOLVED FIXED | ||
| Severity: | crash | CC: | ahiemstra, kde, plasma-bugs-null |
| Priority: | NOR | ||
| Version First Reported In: | 5.21.2 | ||
| Target Milestone: | --- | ||
| Platform: | Arch Linux | ||
| OS: | Linux | ||
| Latest Commit: | https://invent.kde.org/plasma/plasma-systemmonitor/commit/955948e28f2bb4c6551d7a6662e1d5527b3d8e9b | Version Fixed/Implemented In: | |
| Sentry Crash Report: | |||
|
Description
TheNormGuy
2021-03-05 00:06:20 UTC
QSGRenderLoop::handleContextCreationFailure(QQuickWindow*) Gl drivers broken. This is a setup issue. But we should be falling back to software, we need to copy that line from kdeclarative. Adding additional information from when run from the console - file:///usr/lib/qt/qml/org/kde/ksysguard/page/EditablePage.qml?page=overview.page:15:1: QML EditablePage: Binding loop detected for property "heightForContent" file:///usr/lib/qt/qml/org/kde/kirigami.2/private/globaltoolbar/PageRowGlobalToolBarUI.qml:65:9: QML RowLayout (parent or ancestor of QQuickLayoutAttached): Binding loop detected for property "maximumWidth" file:///usr/lib/qt/qml/org/kde/kirigami.2/private/globaltoolbar/PageRowGlobalToolBarUI.qml:65:9: QML RowLayout (parent or ancestor of QQuickLayoutAttached): Binding loop detected for property "maximumWidth" qt.qpa.xcb: QXcbConnection: XCB error: 5 (BadAtom), sequence: 632, resource id: 0, major code: 20 (GetProperty), minor code: 0 file:///usr/lib/qt/qml/org/kde/kirigami.2/private/globaltoolbar/PageRowGlobalToolBarUI.qml:65:9: QML RowLayout (parent or ancestor of QQuickLayoutAttached): Binding loop detected for property "maximumWidth" file:///usr/lib/qt/qml/QtQuick/Controls.2/org.kde.desktop/ScrollView.qml:99:27: QML ScrollBar: Binding loop detected for property "visible" TableView::forceLayout(): Cannot do an immediate re-layout during an ongoing layout! file:///usr/lib/qt/qml/QtQuick/Controls.2/org.kde.desktop/ScrollView.qml:99:27: QML ScrollBar: Binding loop detected for property "visible" file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.piechart/contents/ui/PieChart.qml:91:9: Unable to assign [undefined] to double file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.piechart/contents/ui/PieChart.qml:91:9: Unable to assign [undefined] to double file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.piechart/contents/ui/PieChart.qml:91:9: Unable to assign [undefined] to double file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.textonly/contents/ui/GroupedText.qml:83:21: Unable to assign [undefined] to QColor file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.textonly/contents/ui/GroupedText.qml:83:21: Unable to assign [undefined] to QColor file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.textonly/contents/ui/GroupedText.qml:83:21: Unable to assign [undefined] to QColor file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.textonly/contents/ui/GroupedText.qml:83:21: Unable to assign [undefined] to QColor file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.textonly/contents/ui/GroupedText.qml:83:21: Unable to assign [undefined] to QColor file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.textonly/contents/ui/GroupedText.qml:83:21: Unable to assign [undefined] to QColor file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.textonly/contents/ui/GroupedText.qml:83:21: Unable to assign [undefined] to QColor file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.textonly/contents/ui/GroupedText.qml:83:21: Unable to assign [undefined] to QColor file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.textonly/contents/ui/GroupedText.qml:83:21: Unable to assign [undefined] to QColor file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.textonly/contents/ui/GroupedText.qml:83:21: Unable to assign [undefined] to QColor file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.textonly/contents/ui/GroupedText.qml:83:21: Unable to assign [undefined] to QColor file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.textonly/contents/ui/GroupedText.qml:83:21: Unable to assign [undefined] to QColor file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.textonly/contents/ui/GroupedText.qml:83:21: Unable to assign [undefined] to QColor file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.textonly/contents/ui/GroupedText.qml:83:21: Unable to assign [undefined] to QColor file:///usr/share/ksysguard/sensorfaces/org.kde.ksysguard.textonly/contents/ui/GroupedText.qml:83:21: Unable to assign [undefined] to QColor > QSGRenderLoop::handleContextCreationFailure Well that wasn't supposed to happen. I thought we fixed all of these with https://invent.kde.org/frameworks/kdeclarative/commit/090610124d4650150af49a8e30f6b77ad9803dfe. Is system monitor not using KQuickAddons::QtQuickSettings::init(), maybe? > But we should be falling back to software, we need to copy that line from kdeclarative.
No, we should not. Not until Quick Charts has support for software fallback, which is going to be a long time since I found out from ShadowedRectangle in Kirigami there is actually no way to do software fallback for custom scene graph items. Without that, plasma-systemmonitor is just going to look broken so I'd rather just have it quit on start if OpenGL fails.
It's
`QT_QUICK_BACKEND=software plasma-systemmonitor `
With the stock homepage you still get a box on the homepage with:
"Memory 5.9GiB" and whatnot.
The applications view is surprisingly performant.
Obviously we don't get the graphs and such, but the functionality is ok. That somewhat matches the plasmashell experience, and we don't get many bug reports.
It's obviously degraded and we might want a visible warning, but I would suggest reconsidering if we want to replace ksysguard.
>there is actually no way to do software fallback for custom scene graph items.
FWIW, You can do things at a node level.
Create a QImage, draw into it, then do window()->createTextureFromImage()
window()->createImageNode() . Return that object.
We did that somewhere.
It means an intermediate cache, but that's potentially a good thing.
Git commit 955948e28f2bb4c6551d7a6662e1d5527b3d8e9b by Arjen Hiemstra. Committed on 10/03/2021 at 12:41. Pushed by ahiemstra into branch 'master'. Use software rendering if we cannot use OpenGL and complain about it Use KQuickAddons::QtQuickSettings to fallback to software rendering if OpenGL context creation fails. When using software rendering, we display a message at the top of the window that complains about it. M +1 -0 src/CMakeLists.txt M +3 -2 src/main.cpp M +15 -0 src/main.qml https://invent.kde.org/plasma/plasma-systemmonitor/commit/955948e28f2bb4c6551d7a6662e1d5527b3d8e9b |