Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pipewire: many rtkit warnings #382076

Open
3 tasks done
dyfrgi opened this issue Feb 14, 2025 · 5 comments
Open
3 tasks done

pipewire: many rtkit warnings #382076

dyfrgi opened this issue Feb 14, 2025 · 5 comments
Labels
0.kind: bug Something is broken

Comments

@dyfrgi
Copy link

dyfrgi commented Feb 14, 2025

Nixpkgs version

  • Stable (24.11)

Describe the bug

When pipewire starts, it emits many warnings about RTKit.

These warnings did not occur when pulseaudio was the default because enabling Pulseaudio turns on rtkit.

Steps to reproduce

Set services.misc.graphical-desktop.enable, e.g. by setting services.xserver.enable. I assume just setting services.pipewire.enable will also do it.

Expected behaviour

no warnings

Screenshots

No response

Relevant log output

Feb 14 09:37:44 slab wireplumber[5189]: mod.rt: RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
Feb 14 09:37:44 slab wireplumber[5189]: mod.rt: RTKit does not give us MaxRealtimePriority, using 1
Feb 14 09:37:44 slab wireplumber[5189]: mod.rt: RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
Feb 14 09:37:44 slab wireplumber[5189]: mod.rt: RTKit does not give us MinNiceLevel, using 0
Feb 14 09:37:44 slab wireplumber[5189]: mod.rt: RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
Feb 14 09:37:44 slab wireplumber[5189]: mod.rt: RTKit does not give us RTTimeUSecMax, using -1
Feb 14 09:37:44 slab pipewire-pulse[5188]: mod.rt: RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
Feb 14 09:37:44 slab pipewire-pulse[5188]: mod.rt: RTKit does not give us MaxRealtimePriority, using 1
Feb 14 09:37:44 slab pipewire[5187]: mod.rt: RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
Feb 14 09:37:44 slab pipewire[5187]: mod.rt: RTKit does not give us MaxRealtimePriority, using 1
Feb 14 09:37:44 slab pipewire-pulse[5188]: mod.rt: RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
Feb 14 09:37:44 slab pipewire-pulse[5188]: mod.rt: RTKit does not give us MinNiceLevel, using 0
Feb 14 09:37:44 slab pipewire[5187]: mod.rt: RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
Feb 14 09:37:44 slab pipewire[5187]: mod.rt: RTKit does not give us MinNiceLevel, using 0
Feb 14 09:37:44 slab pipewire-pulse[5188]: mod.rt: RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
Feb 14 09:37:44 slab pipewire-pulse[5188]: mod.rt: RTKit does not give us RTTimeUSecMax, using -1
Feb 14 09:37:44 slab pipewire[5187]: mod.rt: RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
Feb 14 09:37:44 slab pipewire[5187]: mod.rt: RTKit does not give us RTTimeUSecMax, using -1

Additional context

I suggest that the Pipewire module also set services.rtkit.enable, like the Pulseaudio module does.

Though, I'd also note that there's an upstream bug with rtkit in this setup which may stop it from actually doing the task correctly. heftig/rtkit#32. But probably the solution to that is for someone to fork rtkit as the maintainer is not responding.

System metadata

  • system: "x86_64-linux"
  • host os: Linux 6.6.76, NixOS, 24.11 (Vicuna), 24.11.714363.44534bc021b8
  • multi-user?: yes
  • sandbox: yes
  • version: nix-env (Nix) 2.24.12
  • channels(root): "nixos-24.11, nixos-hardware"
  • nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos

Notify maintainers

@K900 @Kranzes

Note for maintainers: Please tag this issue in your pull request description. (i.e. Resolves #ISSUE.)

I assert that this issue is relevant for Nixpkgs

Is this issue important to you?

Add a 👍 reaction to issues you find important.

@dyfrgi dyfrgi added the 0.kind: bug Something is broken label Feb 14, 2025
@K900
Copy link
Contributor

K900 commented Feb 14, 2025

That's intentional, most setups don't need rtkit with pipewire.

@dyfrgi
Copy link
Author

dyfrgi commented Feb 14, 2025

Is there a pipewire config change that would also silence the warnings, by making it stop trying to talk to rtkit? Looks like libpipewire-module-rt has an option rtkit.enabled which defaults to true, so setting it to false in the three configs (pipewire, pipewire-pulse, wireplumber; maybe more with further services enabled, I'm not sure) would probably also silence the warnings by making them stop trying to talk to RTKit.

@K900
Copy link
Contributor

K900 commented Feb 14, 2025

Why, though?

@dyfrgi
Copy link
Author

dyfrgi commented Feb 14, 2025

Log noise makes debugging other issues harder. I found this while digging through journalctl output for information related to a different issue and the yellow warning text stood out. The other issue is an interaction between systems so I can't look at the logs of just one or two units.

Looking at the pipewire module-rt code, it will prefer to directly set RT and nice if that's allowed and then will not check for RTKit at all, so I don't think that disabling it would have any user-visible impact except for reducing log noise. Unfortunately their check for whether they can use rtkit only checks for the presence of dbus, not the presence of an RTKit provider on that bus.

@eclairevoyant
Copy link
Contributor

eclairevoyant commented Feb 14, 2025

Hiding log messages also makes issues hard to debug.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0.kind: bug Something is broken
Projects
None yet
Development

No branches or pull requests

3 participants