I’m using Arch Linux with KDE Plasma and Wayland in a virtual machine, with NVIDIA GPU passed through. I have installed the nvidia-open driver, and since it is a virtual machine, I followed the Arch Wiki to disable all hibernation-related features.
According to my understanding, after locking the screen, the monitor should simply turn off without any other side effects. However, after the screen turns off for several minutes and then wakes up, sometimes it freezes or the resolution and sound card are lost.
-` zt@home-arch
.o+` ------------
`ooo/ OS: Arch Linux x86_64
`+oooo: Host: KVM/QEMU Standard PC (Q35 + ICH9, 2009) (pc-q35-10.0)
`+oooooo: Kernel: Linux 6.16.7-arch1-1
-+oooooo+: Uptime: 40 mins
`/:-:++oooo+: Packages: 762 (pacman)
`/++++/+++++++: Shell: bash 5.3.3
`/++++++++++++++: Display (LG ULTRAFINE): 3840x2160 @ 1.7x in 27", 144 Hz [External]
`/+++ooooooooooooo/` DE: KDE Plasma 6.4.5
./ooosssso++osssssso+` WM: KWin (Wayland)
.oossssso-````/ossssss+` WM Theme: Breeze
-osssssso. :ssssssso. Theme: Breeze (Light) [Qt], Breeze [GTK2/3]
:osssssss/ osssso+++. Icons: breeze [Qt], breeze [GTK2/3/4]
/ossssssss/ +ssssooo/- Font: Noto Sans (10pt) [Qt], Noto Sans (10pt) [GTK2/3/4]
`/ossssso+/:- -:/+osssso+- Cursor: breeze (24px)
`+sso+:-` `.-/+oso: Terminal: konsole 25.8.1
`++:. `-/+/ CPU: AMD Ryzen 5 PRO 5650GE (6) @ 3.42 GHz
.` `/ GPU: NVIDIA RTX A2000 Mobile
Memory: 3.23 GiB / 15.59 GiB (21%)
Swap: 0 B / 4.00 GiB (0%)
Disk (/): 12.11 GiB / 255.00 GiB (5%) - btrfs
Local IP (ens18): 10.1.0.125/24
Locale: en_US.UTF-8
Previously, on Debian with KDE Plasma 6.3.6, everything worked fine. However, in Wayland, I noticed that moving browser windows would leave a white bar trail, so I switched to Arch.
However, the issue with KDE Plasma on Arch causes me to need to restart every time after waking up from lock screen.
This is one of the journalctl logs related to my issue:
There’s no information in the journal log for the user session - where I expect the issue you describe happens - the log shows you’ve logged in at 23:29 and then logged out at 23:43 and shutdown the system, with nothing useful in between.
You should probably show the user’s journal log, that you get through journalctl --user, but likely just the kwin logs will be interesting - journalctl --user -u plasma-kwin_wayland.service
There isn’t anything in the logs between 23:30 and 23:44 - the logs from kscreenlocker_greet at 23:44:04 are during the logout - I’m guessing the screen configuration flactuates during kwin_wayland shutdown and that’s why you get these weird messages.
Can you time the screenlocking and produce a log of just the issue? Start by checking the time, then let the screen lock, then when the screen wakes up - create a log of just the issue by running:
I just tried to reproduce the issue, and this time I was unable to wake up the system at all. I locked the screen at 18:25, and when I tried to unlock it at 18:46, I waited for a few minutes, but all I saw was the screen power light briefly turning on, with no other response. The reason for the inability to wake up seems to be that I set the following in plasma-powerdevil.service.d:
[Service]
Environment="POWERDEVIL_NO_DDCUTIL=1"
Once I removed this, the system returned to the previous issue where the resolution and sound card were lost.
I’ll attach the journalctl logs from this test as well:
Here is the journalctl log from when I reproduced the issue of lost resolution settings and sound card. The screen was locked at 19:29, and I attempted to unlock it at 19:50.
Sep 16 19:30:05 home-arch kwin_wayland[605]: kwin_core: Failed to delay sleep: Sender is not authorized to send message
Sep 16 19:30:06 home-arch kded6[752]: org.kde.pulseaudio: No object for name "alsa_output.pci-0000_01_00.1.hdmi-stereo"
Sep 16 19:30:06 home-arch kded6[752]: org.kde.pulseaudio: No object for name "alsa_output.pci-0000_01_00.1.hdmi-stereo.monitor"
Sep 16 19:30:06 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "alsa_output.pci-0000_01_00.1.hdmi-stereo"
Sep 16 19:30:06 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "alsa_output.pci-0000_01_00.1.hdmi-stereo.monitor"
Sep 16 19:30:06 home-arch kded6[752]: org.kde.pulseaudio: No object for name "@DEFAULT_SINK@"
Sep 16 19:30:06 home-arch kded6[752]: org.kde.pulseaudio: No object for name "@DEFAULT_SOURCE@"
Sep 16 19:30:06 home-arch plasmashell[768]: qrc:/qt/qml/plasma/applet/org/kde/plasma/volume/main.qml:100: TypeError: Cannot read property 'description' of undefined
Sep 16 19:30:06 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "@DEFAULT_SINK@"
Sep 16 19:30:06 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "@DEFAULT_SOURCE@"
Sep 16 19:30:06 home-arch kded6[752]: org.kde.pulseaudio: No object for name "@DEFAULT_SINK@"
Sep 16 19:30:06 home-arch kded6[752]: org.kde.pulseaudio: No object for name "@DEFAULT_SOURCE@"
Sep 16 19:30:06 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "@DEFAULT_SINK@"
Sep 16 19:30:06 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "@DEFAULT_SOURCE@"
Sep 16 19:30:06 home-arch kded6[752]: org.kde.pulseaudio: No object for name "auto_null.monitor"
Sep 16 19:30:06 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "auto_null.monitor"
Sep 16 19:50:43 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "auto_null"
Sep 16 19:50:43 home-arch kded6[752]: org.kde.pulseaudio: No object for name "auto_null"
Sep 16 19:50:43 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "auto_null.monitor"
Sep 16 19:50:43 home-arch kded6[752]: org.kde.pulseaudio: No object for name "auto_null.monitor"
Sep 16 19:50:43 home-arch kded6[752]: org.kde.pulseaudio: No object for name "@DEFAULT_SINK@"
Sep 16 19:50:43 home-arch kded6[752]: org.kde.pulseaudio: No object for name "@DEFAULT_SOURCE@"
Sep 16 19:50:43 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "@DEFAULT_SINK@"
Sep 16 19:50:43 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "@DEFAULT_SOURCE@"
Sep 16 19:50:43 home-arch kded6[752]: org.kde.pulseaudio: No object for name "@DEFAULT_SINK@"
Sep 16 19:50:43 home-arch kded6[752]: org.kde.pulseaudio: No object for name "@DEFAULT_SOURCE@"
Sep 16 19:50:43 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "@DEFAULT_SINK@"
Sep 16 19:50:43 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "@DEFAULT_SOURCE@"
Sep 16 19:50:43 home-arch kded6[752]: org.kde.pulseaudio: No object for name "alsa_output.pci-0000_01_00.1.hdmi-stereo.monitor"
Sep 16 19:50:43 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "alsa_output.pci-0000_01_00.1.hdmi-stereo.monitor"
Sep 16 19:50:43 home-arch DiscoverNotifier[984]: qt.qpa.wayland: There are no outputs - creating placeholder screen
Sep 16 19:50:43 home-arch kded6[752]: qt.qpa.wayland: There are no outputs - creating placeholder screen
Sep 16 19:50:43 home-arch kwin_wayland[605]: kwin_xwl: Could not find a matching X RandR CRTC/output to set as primary for KWin::PlaceholderOutput(0x5596d09fb640, name="Placeholder-1", geometry=QRect(0,0 1920x1080), scale=1)
Sep 16 19:50:43 home-arch polkit-kde-authentication-agent-1[800]: qt.qpa.wayland: There are no outputs - creating placeholder screen
Sep 16 19:50:43 home-arch kwin_wayland[605]: kwin_xwl: Could not find a matching X RandR CRTC/output to set as primary for KWin::PlaceholderOutput(0x5596d09fb640, name="Placeholder-1", geometry=QRect(0,0 1920x1080), scale=1)
Sep 16 19:50:43 home-arch kactivitymanagerd[787]: qt.qpa.wayland: There are no outputs - creating placeholder screen
Sep 16 19:50:43 home-arch xdg-desktop-portal-kde[802]: qt.qpa.wayland: There are no outputs - creating placeholder screen
Sep 16 19:50:43 home-arch kscreenlocker_greet[1029]: qt.qpa.wayland: There are no outputs - creating placeholder screen
Sep 16 19:50:43 home-arch plasmashell[768]: kde.plasmashell: requesting unexisting screen available rect -1
Sep 16 19:50:43 home-arch plasmashell[768]: kde.plasmashell: requesting unexisting screen available rect -1
Sep 16 19:50:43 home-arch org_kde_powerdevil[801]: qt.qpa.wayland: There are no outputs - creating placeholder screen
Sep 16 19:50:43 home-arch plasmashell[768]: qt.qpa.wayland: There are no outputs - creating placeholder screen
Sep 16 19:50:43 home-arch plasmashell[768]: kf.plasma.quick: Exposed with no visual parent. Window positioning broken.
Sep 16 19:50:43 home-arch plasmashell[768]: kf.plasma.quick: Exposed with no visual parent. Window positioning broken.
Sep 16 19:50:45 home-arch org_kde_powerdevil[801]: Traced function stack on entry to i2c_check_open_bus_alive()
Sep 16 19:50:45 home-arch org_kde_powerdevil[801]: No traced function stack for current thread
Sep 16 19:50:45 home-arch org_kde_powerdevil[801]: [ 939] /dev/i2c-5: Checking EDID succeeded after 2 tries (G)
Sep 16 19:50:46 home-arch org_kde_powerdevil[801]: org.kde.powerdevil: [DDCutilDisplay]: ddca_get_non_table_vcp_value -5
Sep 16 19:50:49 home-arch kwin_wayland[605]: kwin_core: EDID colorimetry xy(0.330078, 0.297852) xy(0.597656, 0.149414) xy(0.0605469, 0.314453) xy(0.328125, 0.00292969) is invalid
Sep 16 19:50:49 home-arch kwin_wayland[605]: kwin_xwl: Could not find a matching X RandR CRTC/output to set as primary for KWin::DrmOutput(0x5596cfcecdb0, name="DP-3", geometry=QRect(0,0 640x480), scale=1)
Sep 16 19:50:49 home-arch kded6[880]: xsettingsd: Reloading configuration
Sep 16 19:50:49 home-arch kded6[880]: xsettingsd: Loaded 16 settings from /home/zt/.config/xsettingsd/xsettingsd.conf
Sep 16 19:50:49 home-arch kwin_wayland[605]: kwin_core: EDID colorimetry xy(0.330078, 0.297852) xy(0.597656, 0.149414) xy(0.0605469, 0.314453) xy(0.328125, 0.00292969) is invalid
Sep 16 19:50:49 home-arch kded6[752]: org.kde.pulseaudio: No object for name "alsa_output.pci-0000_01_00.1.hdmi-stereo"
Sep 16 19:50:49 home-arch kded6[752]: org.kde.pulseaudio: No object for name "alsa_output.pci-0000_01_00.1.hdmi-stereo.monitor"
Sep 16 19:50:49 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "alsa_output.pci-0000_01_00.1.hdmi-stereo"
Sep 16 19:50:49 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "alsa_output.pci-0000_01_00.1.hdmi-stereo.monitor"
Sep 16 19:50:49 home-arch kded6[752]: org.kde.pulseaudio: No object for name "@DEFAULT_SINK@"
Sep 16 19:50:49 home-arch kded6[752]: org.kde.pulseaudio: No object for name "@DEFAULT_SOURCE@"
Sep 16 19:50:49 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "@DEFAULT_SINK@"
Sep 16 19:50:49 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "@DEFAULT_SOURCE@"
Sep 16 19:50:49 home-arch kded6[752]: org.kde.pulseaudio: No object for name "@DEFAULT_SINK@"
Sep 16 19:50:49 home-arch kded6[752]: org.kde.pulseaudio: No object for name "@DEFAULT_SOURCE@"
Sep 16 19:50:49 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "@DEFAULT_SINK@"
Sep 16 19:50:49 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "@DEFAULT_SOURCE@"
Sep 16 19:50:49 home-arch kded6[752]: org.kde.pulseaudio: No object for name "auto_null.monitor"
Sep 16 19:50:49 home-arch plasmashell[768]: org.kde.pulseaudio: No object for name "auto_null.monitor"
Sep 16 19:50:49 home-arch kcminit[1105]: Initializing "/usr/lib/qt6/plugins/plasma/kcms/systemsettings/kcm_fonts.so"
Sep 16 19:50:49 home-arch kcminit[1105]: Initializing "/usr/lib/qt6/plugins/plasma/kcms/systemsettings/kcm_style.so"
Sep 16 19:51:01 home-arch kscreenlocker_greet[1029]: qt.qpa.wayland: Could not create EGL surface (EGL error 0x3003)
Sep 16 19:51:01 home-arch kscreenlocker_greet[1029]: Failed to write to the pipe: Bad file descriptor.
Sep 16 19:51:03 home-arch systemd[559]: Started Konsole - Terminal.
Sep 16 19:51:03 home-arch systemd[559]: Started app-org.kde.konsole-1143.scope.
I think the problem might be that PowerDevil is trying to DDC the screen to turn off, and that confuses the VM which drops the screen and for some reason the audio ports.
The virtual machine uses a real GPU and monitor via passthrough. There is no issue with locking and unlocking the screen immediately. However, the problem occurs only when the screen is off for more than ten minutes before trying to unlock it.
I’ve completely disabled systemd sleep, but I’m still unsure what operations KDE needs to perform during the screen-off period.
The issue has been resolved. I added a serial port device before installing the GPU driver, and it seems both were recognized as displays, causing the lock screen issue when trying to switch between them. After removing the serial port device, everything works fine.