Summary: | plasmashell crashes in SortedSystemTrayModel::lessThanSystemTray() on Wayland because of system tray | ||
---|---|---|---|
Product: | [Plasma] plasmashell | Reporter: | Sefa Eyeoglu <contact> |
Component: | System Tray | Assignee: | Plasma Bugs List <plasma-bugs> |
Status: | RESOLVED NOT A BUG | ||
Severity: | crash | CC: | butirsky, materka, nate, vaclav.masin, vlad.zahorodnii, xaver.hugl |
Priority: | HI | Keywords: | regression, wayland |
Version: | master | ||
Target Milestone: | 1.0 | ||
Platform: | Other | ||
OS: | Linux | ||
See Also: | https://bugs.kde.org/show_bug.cgi?id=436180 | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: |
listIcons.sh
nm -gD KSC_KWayland.so |
Description
Sefa Eyeoglu
2021-04-21 07:24:31 UTC
Additionally: If it doesn't crash, I don't have any tray icons, other than the "default" ones from plasma-workspace. So if I start any application that should show one, there isn't one in the tray. Created attachment 137770 [details] listIcons.sh Can you check this patch? https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/805 For missing icons, at first look it seems unrelated, but I have a feeling that both problems (crash and missing icons) are caused by the same root cause. When icons are missing, can you run attached script? It will list all SNI (Status Notifier Item) from DBus. . I just checked my dbus and I don't even have an SNI service registered there. I then noticed that some services were popping out and back in. Looking at journalctl --user -f (i am using system startup), I saw that kded5 was crashing and restarting constantly. I am assuming that's what would register the SNI service. The crash is related to my local build though, as it can't find a symbol in my kscreen. Maybe it wasn't rebuild with the rest of the stuff? Anyway. I am looking into that. s/system startup/systemd startup/g on my last comment × plasma-kded.service - KDE Daemon Loaded: loaded (/run/user/1000/systemd/user.control/plasma-kded.service; static) Active: failed (Result: exit-code) since Thu 2021-04-22 01:09:25 CEST; 16s ago Process: 315772 ExecStart=/home/scrumplex/kde/usr/bin/kded5 (code=exited, status=127) Main PID: 315772 (code=exited, status=127) CPU: 405ms Apr 22 01:09:25 andromeda kded5[315772]: bluedevil: Agent registered Apr 22 01:09:25 andromeda kded5[315772]: bluedevil: Requested default Agent Apr 22 01:09:25 andromeda kded5[315772]: Registering ":1.36/StatusNotifierItem" to system tray Apr 22 01:09:25 andromeda kded5[315772]: Registering ":1.84/StatusNotifierItem" to system tray Apr 22 01:09:25 andromeda kded5[315772]: Registering ":1.38/StatusNotifierItem" to system tray Apr 22 01:09:25 andromeda kded5[315772]: bluedevil: ObexAgent registered Apr 22 01:09:25 andromeda kded5[315772]: kscreen.kwayland: Loading Wayland backend. Apr 22 01:09:25 andromeda kded5[315772]: /home/scrumplex/kde/usr/bin/kded5: symbol lookup error: /home/scrumplex/kde/usr/lib/plugins/kf5/kscreen/KSC_KWayland.so: undefined symbol: _ZNK8KWayland6Client12OutputDevice12capabilitiesEv Apr 22 01:09:25 andromeda systemd[1527]: plasma-kded.service: Main process exited, code=exited, status=127/n/a Apr 22 01:09:25 andromeda systemd[1527]: plasma-kded.service: Failed with result 'exit-code'. I don't know what to do here. I cleared ~/kde/usr and rebuilt every component involved Reverting 680134df4ca28da30a16f2e7369d1f1013d40f26 in libkscreen fixes the issue about kded not starting. That also fixes the tray icons, as they are now shown for all apps. This also in-turn fixes the issue in this bug report, as kded5 caused an edge case which plasmashell didn't handle. Created attachment 137788 [details]
nm -gD KSC_KWayland.so
So dumping the symbols in KSC_KWayland.so actually reveals, that they are undefined.
I don't have enough experience to tell, why they would even be undefined
> This also in-turn fixes the issue in this bug report, as kded5 caused an > edge case which plasmashell didn't handle. Yes, crashing kded can definitely cause some weird scenarios. > So dumping the symbols in KSC_KWayland.so actually reveals, that they are > undefined. Is this related? (In reply to Konrad Materka from comment #9) > > This also in-turn fixes the issue in this bug report, as kded5 caused an > > edge case which plasmashell didn't handle. > Yes, crashing kded can definitely cause some weird scenarios. > > > So dumping the symbols in KSC_KWayland.so actually reveals, that they are > > undefined. > Is this related? I don't know tbh. symbol lookup error: /home/scrumplex/kde/usr/lib/plugins/kf5/kscreen/KSC_KWayland.so: undefined symbol: _ZNK8KWayland6Client12OutputDevice12capabilitiesEv it looks like libkscreen was built with the right kwayland, but then kwayland was downgraded or maybe wrong kwayland is picked up. I deleted my all of my kdesrc-build environment today, including the configuration and rebuilt everything. It still fails with the same error. Do you still have problems with Sytem Tray crash? If not, can you close this bug report and open separate one for libkscreen? Yes. When kded5 is running as intended, this bug does not appear. *** Bug 436350 has been marked as a duplicate of this bug. *** Git commit 26f369ad7a23fb51d685438c51fec97654ca63e6 by Konrad Materka. Committed on 01/05/2021 at 19:41. Pushed by kmaterka into branch 'master'. [dataengine] Emit sourceRemoved earlier Emit `sourceRemoved` before source is actually removed, so that visualization has a chance to disconnect itself. Related: bug 436350, bug 436180 M +2 -2 src/plasma/dataengine.cpp https://invent.kde.org/frameworks/plasma-framework/commit/26f369ad7a23fb51d685438c51fec97654ca63e6 A possibly relevant merge request was started @ https://invent.kde.org/frameworks/plasma-framework/-/merge_requests/248 Git commit 5984d4960fa5ecf60a20b1fbc782fb841faa4af7 by Konrad Materka. Committed on 04/05/2021 at 07:14. Pushed by kmaterka into branch 'master'. [dataengine] Emit sourceRemoved earlier Emit `sourceRemoved` before source is actually removed, so that visualization has a chance to disconnect itself. Related: bug 436350, bug 436180 M +2 -2 src/plasma/dataengine.cpp https://invent.kde.org/frameworks/plasma-framework/commit/5984d4960fa5ecf60a20b1fbc782fb841faa4af7 |