li20034 Posted 3 hours ago Posted 3 hours ago (edited) There is a previous topic on this from 2020, but it's closed and not much action was taken except discussing workarounds. I'd like to continue this. Looking at the kernel configs in this repo, many of them have CONFIG_RT_GROUP_SCHED=y. This does not play nicely with modern systemd (cgroups v2), breaking things like rtkit-daemon. See https://bugs.gentoo.org/569546 and https://bugzilla.redhat.com/show_bug.cgi?id=655321. rtkit is an important part of making pulseaudio and pipewire work smoothly, as well as for many other low-latency applications. There are a few currently available workarounds, but none are ideal: 1. Linux 6.16 or later has boot time param rt_group_sched=0 to override it, but there is still some runtime overhead. No exact alternative for earlier kernels. 2. kernel.sched_rt_runtime_us=-1 in sysctl.conf -- potentially dangerous as it removes the 95% CPU time safeguard for RT processes, leading to lockups when badly behaving processes exist. 3. disable cpu and cpuset cgroup controllers in systemd configs -- has a lot of other side effects, like preventing systemd's CPU limits for services Since the last post on this (linked above), forcefully assigning an rt time time slice won't even work anymore, since cgroup v2 doesn't even have that ability anymore. So this kernel config option is somewhat useless now. Edited 3 hours ago by li20034 0 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.