mirror of
https://github.com/games-on-whales/LXC2Docker.git
synced 2026-10-16 05:12:04 +00:00
[PR #69] [MERGED] fix(lxc): use cgroup:mixed so uinput device nodes keep their major:minor #68
Labels
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
games-on-whales/LXC2Docker#68
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/games-on-whales/LXC2Docker/pull/69
Author: @JBailes
Created: 6/7/2026
Status: ✅ Merged
Merged: 6/7/2026
Merged by: @JBailes
Base:
main← Head:fix/cgroup-mixed-device-nodes📝 Commits (1)
cfdd044fix(lxc): use cgroup:mixed so uinput device nodes keep their major:minor📊 Changes
2 files changed (+41 additions, -12 deletions)
View changed files
📝
internal/lxc/config.go(+14 -10)📝
internal/lxc/namespace_cgroup_test.go(+27 -2)📄 Description
PR #43 switched the auto-mounted cgroup to
cgroup:rw, which bind-mounts the full cgroup v2 hierarchy into the container. On the PVE path this makes a freshly-created uinput devicestat()as0:0, so udev/SDL never match it as a joystick and gamepads go undetected in Wolf — keyboard/mouse are unaffected because they predate the cgroup mount.cgroup:mixedgives nested runtimes a writable own-cgroup without mounting the whole hierarchy, leaving device-nodemajor:minorintact. It relies on the private cgroup namespace already cloned for host-namespace containers; without one LXC aborts the cgroup mount on cgroup v2.Validated live on Proxmox: controllers (single and dual) work in Steam, BG3, and the Wolf UI after the change; broken before it.
Adds a regression test asserting the PVE path uses
cgroup:mixed, notcgroup:rw.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.