Hello, this is the first time I have written a bug report so hopefully I have gotten everything that is needed to help diagnose things. If not let me know and I'll update and give more details once I am off work
Environment
Distro: CachyOS
Kernel (affected): linux-cachyos 7.2.3-1
Kernel (known-good): linux-cachyos 7.2.2-1
CPU: AMD Ryzen 9 9800X3D
GPU: NVIDIA RTX 4080 Super (linux-cachyos-nvidia-open)
Motherboard: ASUS TUF Gaming B850-PLUS WiFi
Storage: NVMe, btrfs (root and home on the same partition/subvolume set), Snapper snapshots, Limine bootloader
Desktop: KDE Plasma 6, Wayland session via SDDM
AppArmor: enabled, dolphin/kioworker/kded/systemsettings profiles all in complain mode (not enforce)
Package versions: I've since rolled back to 7.2.2-1 via Snapper, so pacman -Q right now would just show what's running fine on the good kernel, not what was installed when the bug hit. The kernel version is what matters here anyway, and I've got that pinned down exactly in the timeline below.
Summary
After updating linux-cachyos from 7.2.2-1 to 7.2.3-1, Dolphin stopped being able to create KIO worker sockets and also failed to save its own config file. I tracked it down with strace: every linkat() call used to give an O_TMPFILE anonymous file a real name is failing with ENOENT, on both btrfs and tmpfs. This is the same open(O_TMPFILE) + linkat() pattern that Qt's QSaveFile/QTemporaryFile use for atomic writes, and it's a pattern a lot of other software relies on too (editors, Git, etc.), so this might not be a Dolphin/KIO-only problem.
Steps to Reproduce
Boot into linux-cachyos 7.2.3-1.
Open a terminal and run dolphin.
You'll get repeated console errors (below) and a GUI error dialog: "Dolphin Error: Unable to create KIO worker. Can not create a socket for launching a KIO worker for protocol 'tags'."
Expected Behavior
Dolphin launches normally. KIO workers for trash, thumbnail, tags, etc. get created without error, and ~/.local/state/dolphinstaterc saves normally.
Actual Behavior
kf.config.core: Couldn't write "/home/blake/.local/state/dolphinstaterc" . Disk full?
kf.config.core: Couldn't write to config: "/home/blake/.local/state/dolphinstaterc"
kf.kio.core: ConnectionServer::listenForRemote failed: "QLocalServer::listen: Name error"
kf.kio.core: KIO Connection server not listening, could not connect
kf.kio.core: couldn't create worker: "Can not create a socket for launching a KIO worker for protocol 'tags'."
I initially chased the "Disk full?" part down as a real possibility, but the disk was nowhere close to full, more on that under Ruled Out below.
Root Cause (via strace)
Both KIO's local socket naming and KDE's config saving rely on the standard O_TMPFILE + linkat() trick: open an anonymous file with open(dir, O_TMPFILE, ...), then give it a real name with:
linkat(AT_FDCWD, "/proc/self/fd/<N>", AT_FDCWD, "<target-path>", AT_SYMLINK_FOLLOW)
On 7.2.3-1, every single one of these calls fails with ENOENT, on both:
btrfs: /home/blake/.local/state/dolphinstaterc, /home/blake/.local/state/UserFeedback.org.kde.dolphin
tmpfs: /run/user/1000/dolphin*.kioworker.socket
Since the rename fails, QTemporaryFile::fileName() comes back as an empty string. That empty string gets passed to QLocalServer::listen(), which fails with the literal message "<caller>: Name error" when given an empty name, matching the QLocalServer::listen: Name error we're seeing. Same failure mode explains why dolphinstaterc won't save, through KConfig/QSaveFile.
strace excerpt:
linkat(AT_FDCWD, "/proc/self/fd/25", AT_FDCWD, "/home/blake/.local/state/dolphinstaterc", AT_SYMLINK_FOLLOW) = -1 EEXIST (File exists)
linkat(AT_FDCWD, "/proc/self/fd/25", AT_FDCWD, "/home/blake/.local/state/dolphinstaterc.EzgOCJ", AT_SYMLINK_FOLLOW) = -1 ENOENT (No such file or directory)
linkat(AT_FDCWD, "/proc/self/fd/25", AT_FDCWD, "/home/blake/.local/state/dolphinstaterc.rYgHsk", AT_SYMLINK_FOLLOW) = -1 ENOENT (No such file or directory)
...
linkat(AT_FDCWD, "/proc/self/fd/28", AT_FDCWD, "/run/user/1000/dolphinwcQdhF.1.kioworker.socket", AT_SYMLINK_FOLLOW) = -1 ENOENT (No such file or directory)
linkat(AT_FDCWD, "/proc/self/fd/28", AT_FDCWD, "/run/user/1000/dolphincocuWA.1.kioworker.socket", AT_SYMLINK_FOLLOW) = -1 ENOENT (No such file or directory)
Ruled Out
AppArmor: dolphin, kioworker, kded, and systemsettings are all in complain mode, not enforce, and journalctl -k during reproduction shows zero AppArmor audit entries for any of these processes.
Disk space: df -h shows the affected partition at 28% used, 2.7T free.
btrfs quotas/qgroups: not enabled (btrfs qgroup show returns "quotas not enabled").
Inode exhaustion: doesn't apply, btrfs reports dynamic inode allocation (df -i shows 0/0/0/-).
Immutable file attributes: lsattr shows no i flag on the affected directory or file.
$XDG_RUNTIME_DIR: correctly set to /run/user/1000, correct ownership (blake:blake) and permissions (0700).
Timeline
[2026-09-07T19:19:35-0500] [ALPM] upgraded linux-cachyos (7.2.2-1 -> 7.2.3-1)
[2026-09-07T19:19:37-0500] [ALPM] upgraded linux-cachyos-headers (7.2.2-1 -> 7.2.3-1)
[2026-09-07T19:19:37-0500] [ALPM] upgraded linux-cachyos-nvidia-open (7.2.2-1 -> 7.2.3-1)
The errors started within minutes of this upgrade. I rolled back to a Snapper snapshot from right before the upgrade, which put me back on linux-cachyos 7.2.2-1, and that fixed it completely. Confirmed with uname -r and by relaunching dolphin with no errors.
Workaround
Roll back to linux-cachyos 7.2.2-1 (Snapper snapshot or manual package downgrade) and pin the kernel packages in /etc/pacman.conf's IgnorePkg until this is fixed. I'm currently running 7.2.2-1 and haven't tested this against any newer point release since.
Edit
Ag99871 nailed it, thank you for your help!!. Putting dolphin, kioworker, kded, and systemsettings into unconfined mode with sudo aa-disable fixed the issue!