You are not logged in.

#1 2023-08-20 02:54:44

Reverier
Member
Registered: 2020-01-25
Posts: 18

Plasmashell keeps crashing on wayland when playing wine games

Hi everyone, I've been suffering from a strange bug for the past few days, whenever I try to open a fullscreen wine app or game, he works fine and is able to hear the sound and perform keyboard actions, but is not able to see it. Then my plasmashell starts lagging continuously and then crashes, looking at the log in journalctl I see that plasma is reporting the error `Too many open files.`:

Aug 19 19:35:47 Reverier-Arch systemd[1691]: Starting KDE Plasma Workspace...
Aug 19 19:35:47 Reverier-Arch plasmashell[4269]: Checking screens: available: (QScreen(0x555c1bdf2100, name="eDP-1")) redundant: QHash() fake: QSet() all: (QScreen(0x555c1bdf2100, name="eDP-1"))
Aug 19 19:35:47 Reverier-Arch systemd[1691]: Started KDE Plasma Workspace.
Aug 19 19:35:47 Reverier-Arch plasmashell[4269]: kf.plasma.quick: Applet preload policy set to 1
Aug 19 19:35:47 Reverier-Arch plasmashell[4269]: kf.kio.core: Malformed JSON protocol file for protocol: "trash" , number of the ExtraNames fields should match the number of ExtraTypes fields
Aug 19 19:35:47 Reverier-Arch plasmashell[4269]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Aug 19 19:35:47 Reverier-Arch plasmashell[4269]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Aug 19 19:35:47 Reverier-Arch plasmashell[4269]: org.kde.plasma.containmentlayoutmanager: Error: cannot change the containment to AppletsLayout
Aug 19 19:35:47 Reverier-Arch kioslave5[4304]: kf.kio.core: Malformed JSON protocol file for protocol: "trash" , number of the ExtraNames fields should match the number of ExtraTypes fields
Aug 19 19:35:47 Reverier-Arch kioslave5[4304]: QObject::connect: No such slot DesktopProtocol::_k_slotRedirection(KIO::Job *, QUrl)
Aug 19 19:35:47 Reverier-Arch kioslave5[4304]: QObject::connect: No such slot DesktopProtocol::_k_slotRedirection(KIO::Job *, QUrl)
Aug 19 19:35:47 Reverier-Arch plasmashell[4269]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Aug 19 19:35:47 Reverier-Arch plasmashell[4269]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: Trying to use rootObject before initialization is completed, whilst using setInitializationDelayed. Forcing completion
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: org.kde.plasma.kicker: Entry is not valid "org.kde.kontact.desktop" QSharedPointer(0x555c1ce7d040)
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: org.kde.plasma.kicker: Entry is not valid "ktp-contactlist.desktop" QSharedPointer(0x555c1ce72910)
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: org.kde.plasma.kicker: Entry is not valid "org.kde.discover.desktop" QSharedPointer(0x555c1ce7d2a0)
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: org.kde.plasma.kicker: Entry is not valid "org.kde.kontact.desktop" QSharedPointer(0x555c1ce7ce50)
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: org.kde.plasma.kicker: Entry is not valid "ktp-contactlist.desktop" QSharedPointer(0x555c1ce7bd10)
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: org.kde.plasma.kicker: Entry is not valid "org.kde.discover.desktop" QSharedPointer(0x555c1ce73230)
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: Cyclic dependency detected between "file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/global/Globals.qml" and "file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/NotificationHeader.qml"
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: Cyclic dependency detected between "file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/global/Globals.qml" and "file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/ThumbnailStrip.qml"
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: file:///usr/share/plasma/plasmoids/org.kde.plasma.networkmanagement/contents/ui/main.qml:95: TypeError: Cannot read property 'airplaneModeAvailable' of null
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: file:///usr/share/plasma/plasmoids/org.kde.plasma.networkmanagement/contents/ui/main.qml:95: TypeError: Cannot read property 'airplaneModeAvailable' of null
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: file:///usr/share/plasma/plasmoids/org.kde.plasma.private.systemtray/contents/ui/main.qml:18:1: QML MouseArea (parent or ancestor of QQuickLayoutAttached): Binding loop detected for property "minimumWidth"
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: Both point size and pixel size set. Using pixel size.
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: file:///usr/share/plasma/plasmoids/org.kde.plasma.digitalclock/contents/ui/Tooltip.qml:78:9: QML GridLayout (parent or ancestor of QQuickLayoutAttached): Binding loop detected for property "minimumWidth"
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: org.kde.plasma.containmentlayoutmanager: Error: cannot change the containment to AppletsLayout
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: libkcups: 0
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: libkcups: 0
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Aug 19 19:35:48 Reverier-Arch kioslave5[4304]: QObject::connect: No such slot DesktopProtocol::_k_slotRedirection(KIO::Job *, QUrl)
Aug 19 19:35:48 Reverier-Arch plasmashell[4269]: QFont::setPointSizeF: Point size <= 0 (0.000000), must be greater than 0
Aug 19 19:35:51 Reverier-Arch plasmashell[4269]: file:///usr/lib/qt/qml/org/kde/plasma/workspace/calendar/MonthView.qml:244:5: QML MonthViewHeader: Binding loop detected for property "implicitHeight"
Aug 19 19:35:55 Reverier-Arch plasmashell[4269]: kf5idletime_wayland: This plugin does not support polling idle time
Aug 19 19:36:09 Reverier-Arch plasmashell[4269]: error marshalling arguments for get_icon: dup failed: Too many open files.
Aug 19 19:36:09 Reverier-Arch plasmashell[4269]: Error marshalling request: Too many open files.
Aug 19 19:36:09 Reverier-Arch plasmashell[4269]: The Wayland connection experienced a fatal error: Too many open files.
Aug 19 19:36:10 Reverier-Arch systemd[1691]: plasma-plasmashell.service: Main process exited, code=exited, status=1/FAILURE
Aug 19 19:36:10 Reverier-Arch systemd[1691]: plasma-plasmashell.service: Failed with result 'exit-code'.
Aug 19 19:36:10 Reverier-Arch systemd[1691]: plasma-plasmashell.service: Consumed 24.493s CPU time.
Aug 19 19:36:11 Reverier-Arch systemd[1691]: plasma-plasmashell.service: Scheduled restart job, restart counter is at 4.

I tried to look at the /proc/<pid>/fd directory while plasmashell was still crashing, and it showed that plasmashell had hundreds of pipes open, and was closing and opening them until the number of concurrent pipes exceeded the fd limit.

$ ll /proc/(pidof plasmashell)/fd
[/proc/9741/fd/469: No such file or directory (os error 2)]
Permissions Size User     Date Modified    Name
lr-x------    64 reverier 2023-08-19 23:52 0 -> /dev/null
lrwx------@   64 reverier 2023-08-19 23:52 1 -> socket:[84562]
lrwx------@   64 reverier 2023-08-19 23:52 2 -> socket:[84562]
lrwx------@   64 reverier 2023-08-19 23:52 3 -> socket:[112714]
lrwx------    64 reverier 2023-08-19 23:52 4 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 5 -> anon_inode:[eventfd]
lrwx------@   64 reverier 2023-08-19 23:52 6 -> socket:[115118]
lrwx------@   64 reverier 2023-08-19 23:52 7 -> socket:[115119]
lr-x------    64 reverier 2023-08-19 23:52 8 -> anon_inode:inotify
lrwx------@   64 reverier 2023-08-19 23:52 9 -> socket:[104920]
lrwx------    64 reverier 2023-08-19 23:52 10 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 11 -> anon_inode:[eventfd]
lr-x------    64 reverier 2023-08-19 23:52 12 -> pipe:[104921]
l-wx------    64 reverier 2023-08-19 23:52 13 -> pipe:[104921]
lr-x------    64 reverier 2023-08-19 23:52 14 -> pipe:[97985]
l-wx------    64 reverier 2023-08-19 23:52 15 -> pipe:[97985]
lr-x------    64 reverier 2023-08-19 23:52 16 -> anon_inode:inotify
lrwx------    64 reverier 2023-08-19 23:52 17 -> /dev/nvidiactl
lrwx------    64 reverier 2023-08-19 23:52 18 -> /dev/nvidia0
lrwx------    64 reverier 2023-08-19 23:52 19 -> /dev/nvidia0
lrwx------    64 reverier 2023-08-19 23:52 20 -> /dev/dri/renderD128
lrwx------    64 reverier 2023-08-19 23:52 21 -> /dev/dri/renderD128
lrwx------    64 reverier 2023-08-19 23:52 22 -> /dev/dri/renderD128
lrwx------    64 reverier 2023-08-19 23:52 23 -> /dev/dri/renderD128
lrwx------    64 reverier 2023-08-19 23:52 24 -> anon_inode:[eventfd]
lrwx------@   64 reverier 2023-08-19 23:52 25 -> socket:[98515]
lr-x------    64 reverier 2023-08-19 23:52 26 -> /home/reverier/.cache/ksycoca5_zh_OJh4RQrrNygTONJgtS85EOOYpRc=
lr-x------    64 reverier 2023-08-19 23:52 27 -> /home/reverier/.local/share/mime/mime.cache
lr-x------    64 reverier 2023-08-19 23:52 28 -> /usr/share/mime/mime.cache
lr-x------    64 reverier 2023-08-19 23:52 29 -> anon_inode:inotify
lrwx------    64 reverier 2023-08-19 23:52 30 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 31 -> /memfd:pulseaudio (deleted)
lrwx------    64 reverier 2023-08-19 23:52 32 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 33 -> /memfd:kwayland-shared (deleted)
lrwx------    64 reverier 2023-08-19 23:52 34 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 35 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 36 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 37 -> /memfd:kwayland-shared (deleted)
lrwx------    64 reverier 2023-08-19 23:52 38 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 39 -> anon_inode:[eventfd]
lrwx------@   64 reverier 2023-08-19 23:52 40 -> socket:[104945]
lrwx------    64 reverier 2023-08-19 23:52 41 -> /memfd:kwayland-shared (deleted)
lrwx------    64 reverier 2023-08-19 23:52 42 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 43 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 44 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 45 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 46 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 47 -> /memfd:kwayland-shared (deleted)
lrwx------    64 reverier 2023-08-19 23:52 48 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 49 -> /memfd:kwayland-shared (deleted)
lrwx------    64 reverier 2023-08-19 23:52 50 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 51 -> /memfd:kwayland-shared (deleted)
lrwx------    64 reverier 2023-08-19 23:52 52 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 53 -> /memfd:kwayland-shared (deleted)
lrwx------    64 reverier 2023-08-19 23:52 54 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 55 -> /memfd:kwayland-shared (deleted)
lrwx------    64 reverier 2023-08-19 23:52 56 -> anon_inode:[eventfd]
lr-x------    64 reverier 2023-08-19 23:52 57 -> anon_inode:inotify
lr-x------    64 reverier 2023-08-19 23:52 58 -> /proc/9741/mounts
lrwx------@   64 reverier 2023-08-19 23:52 59 -> socket:[104961]
lr-x------    64 reverier 2023-08-19 23:52 60 -> anon_inode:inotify
lr-x------    64 reverier 2023-08-19 23:52 61 -> /home/reverier/.local/share/kactivitymanagerd/resources/database
lrwx------    64 reverier 2023-08-19 23:52 62 -> /home/reverier/.local/share/kactivitymanagerd/resources/database-wal
lrwx------    64 reverier 2023-08-19 23:52 63 -> /home/reverier/.local/share/kactivitymanagerd/resources/database-shm
lrwx------@   64 reverier 2023-08-19 23:52 64 -> socket:[104964]
lrwx------    64 reverier 2023-08-19 23:52 65 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 66 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 67 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 68 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 69 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 70 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 71 -> anon_inode:[eventfd]
lrwx------@   64 reverier 2023-08-19 23:52 72 -> socket:[98526]
lr-x------@   64 reverier 2023-08-19 23:52 73 -> /dev/rfkill
lrwx------@   64 reverier 2023-08-19 23:52 74 -> socket:[113943]
lrwx------@   64 reverier 2023-08-19 23:52 75 -> socket:[110819]
lrwx------    64 reverier 2023-08-19 23:52 76 -> anon_inode:[eventfd]
lrwx------    64 reverier 2023-08-19 23:52 77 -> /memfd:kwayland-shared (deleted)
lrwx------@   64 reverier 2023-08-19 23:52 78 -> socket:[92158]
lrwx------    64 reverier 2023-08-19 23:52 81 -> /memfd:kwin-xkb-keymap (deleted)
lrwx------    64 reverier 2023-08-19 23:52 85 -> /memfd:kwayland-shared (deleted)
lrwx------    64 reverier 2023-08-19 23:52 92 -> anon_inode:[timerfd]
lrwx------    64 reverier 2023-08-19 23:52 94 -> /memfd:kwayland-shared (deleted)
lrwx------    64 reverier 2023-08-19 23:52 102 -> /memfd:kwayland-shared (deleted)
lrwx------    64 reverier 2023-08-19 23:52 110 -> /memfd:kwayland-shared (deleted)
lrwx------    64 reverier 2023-08-19 23:52 118 -> /memfd:kwayland-shared (deleted)
lrwx------    64 reverier 2023-08-19 23:52 124 -> /memfd:kwayland-shared (deleted)
lrwx------    64 reverier 2023-08-19 23:52 128 -> /memfd:kwayland-shared (deleted)
lr-x------    64 reverier 2023-08-19 23:52 453
lr-x------    64 reverier 2023-08-19 23:52 481 -> pipe:[117503]
lr-x------    64 reverier 2023-08-19 23:52 489
lr-x------    64 reverier 2023-08-19 23:52 497 -> pipe:[117504]
lr-x------    64 reverier 2023-08-19 23:52 505
lr-x------    64 reverier 2023-08-19 23:52 513
lr-x------    64 reverier 2023-08-19 23:52 517 -> pipe:[117505]
lr-x------    64 reverier 2023-08-19 23:52 521 -> pipe:[117480]
lr-x------    64 reverier 2023-08-19 23:52 529 -> pipe:[117481]
lr-x------    64 reverier 2023-08-19 23:52 533 -> pipe:[117506]
lr-x------    64 reverier 2023-08-19 23:52 536 -> pipe:[117482]
lr-x------    64 reverier 2023-08-19 23:52 539 -> pipe:[117483]
lr-x------    64 reverier 2023-08-19 23:52 541 -> pipe:[117507]
lr-x------    64 reverier 2023-08-19 23:52 543 -> pipe:[117484]
lr-x------    64 reverier 2023-08-19 23:52 546
lr-x------    64 reverier 2023-08-19 23:52 547 -> pipe:[117485]
lr-x------    64 reverier 2023-08-19 23:52 549 -> pipe:[117508]
lr-x------    64 reverier 2023-08-19 23:52 551 -> pipe:[117486]
lr-x------    64 reverier 2023-08-19 23:52 552
lr-x------    64 reverier 2023-08-19 23:52 554
lr-x------    64 reverier 2023-08-19 23:52 555 -> pipe:[117487]
lr-x------    64 reverier 2023-08-19 23:52 556
lr-x------    64 reverier 2023-08-19 23:52 557 -> pipe:[117509]
lr-x------    64 reverier 2023-08-19 23:52 558
lr-x------    64 reverier 2023-08-19 23:52 559 -> pipe:[117488]
lr-x------    64 reverier 2023-08-19 23:52 560
lr-x------    64 reverier 2023-08-19 23:52 562
lr-x------    64 reverier 2023-08-19 23:52 563 -> pipe:[117489]
lr-x------    64 reverier 2023-08-19 23:52 564 -> pipe:[117510]
lr-x------    64 reverier 2023-08-19 23:52 566 -> pipe:[117490]
lr-x------    64 reverier 2023-08-19 23:52 567 -> pipe:[117511]
lr-x------    64 reverier 2023-08-19 23:52 568 -> pipe:[117491]
lr-x------    64 reverier 2023-08-19 23:52 570 -> pipe:[117492]
lr-x------    64 reverier 2023-08-19 23:52 571 -> pipe:[117512]
lr-x------    64 reverier 2023-08-19 23:52 572 -> pipe:[117493]
lr-x------    64 reverier 2023-08-19 23:52 574 -> pipe:[117494]
lr-x------    64 reverier 2023-08-19 23:52 575 -> pipe:[117513]
lr-x------    64 reverier 2023-08-19 23:52 576 -> pipe:[117495]
lr-x------    64 reverier 2023-08-19 23:52 578 -> pipe:[117496]
lr-x------    64 reverier 2023-08-19 23:52 579 -> pipe:[117514]
lr-x------    64 reverier 2023-08-19 23:52 580 -> pipe:[117497]
lr-x------    64 reverier 2023-08-19 23:52 582 -> pipe:[117498]
lr-x------    64 reverier 2023-08-19 23:52 583 -> pipe:[117515]
lr-x------    64 reverier 2023-08-19 23:52 584 -> pipe:[117499]
lr-x------    64 reverier 2023-08-19 23:52 586 -> pipe:[117500]
lr-x------    64 reverier 2023-08-19 23:52 587 -> pipe:[117516]
lr-x------    64 reverier 2023-08-19 23:52 588 -> pipe:[117501]
lr-x------    64 reverier 2023-08-19 23:52 590 -> pipe:[117502]
lr-x------    64 reverier 2023-08-19 23:52 591 -> pipe:[117517]
lr-x------    64 reverier 2023-08-19 23:52 594 -> pipe:[117518]
lr-x------    64 reverier 2023-08-19 23:52 596 -> pipe:[117519]
lr-x------    64 reverier 2023-08-19 23:52 598 -> pipe:[117520]
lr-x------    64 reverier 2023-08-19 23:52 600 -> pipe:[117521]
lr-x------    64 reverier 2023-08-19 23:52 602 -> pipe:[117522]
lr-x------    64 reverier 2023-08-19 23:52 604 -> pipe:[117523]
lr-x------    64 reverier 2023-08-19 23:52 606 -> pipe:[117524]
lr-x------    64 reverier 2023-08-19 23:52 608 -> pipe:[117525]
lr-x------    64 reverier 2023-08-19 23:52 610 -> pipe:[117526]
lr-x------    64 reverier 2023-08-19 23:52 612 -> pipe:[117527]
lr-x------    64 reverier 2023-08-19 23:52 614 -> pipe:[117528]
lr-x------    64 reverier 2023-08-19 23:52 616 -> pipe:[117529]

If I immediately close the wine app that is not rendering out when plasma is lagging, plasma goes back to normal immediately as well.

I am using Plasma 5.27.7 on Wayland. Global scaling is 150%. The problem only seems to occur when the scaling is 150%, I tested 100%, 125%, 175%, 200% scaling and it works fine, plasma no longer opens up a bunch of pipes and then crashes, and the wine app also shows up fine.

the XWayland `Apply scaling themeselves` option is enabled at the scaling settings on plasma.

How can i fix this? Thanks for any response!

Offline

#2 2023-08-20 09:19:20

arch4life
Member
Registered: 2023-08-19
Posts: 2

Re: Plasmashell keeps crashing on wayland when playing wine games

It is a weird issue, not gonna lie, but here are some possible solutions you can try:

1. I noticed some logs related to specific plasmoids. These might not be related to full screen Wine problem but rather to instability plasmashell itself. You can try removing recently added plasmoids and widgets to see if that helps to stabilize the environment.
2. You mentioned when you open full screen Wine app that you can hear sounds and performs input, but the screen is blank. This could be issue to graphics drivers and display settings. Make sure you have correct and up to date graphics drivers and check your display settings for refresh rate and resolution. Also you can check Wine configuration settings by typing winecfg to experiment with different settings.
3. You are getting error 'too many open files'. This indicates that your system is hitting file descriptor limit. The plasmashell is trying to open more files than your system is configured to do. You can try to increase your user file descriptor limit. You can edit /etc/security/limits.conf or create a new file in /etc/security/limits.d/ with the following content:
<your_username> hard nofile 65536
<your_username> soft nofile 65536
4. Lastly you can try just switching to X11. I had weird bugs while running Plasma with Wayland and just switching to X11 helped me get rid of those bugs.

Let me know if any of this helped.

Offline

Board footer

Powered by FluxBB