1

On this single-user FreeBSD desktop, various desktop-components communicate using the user's own dbus-instance.

Yet, pulseaudio also tries to talk to the system-wide dbus (which is not enabled) and, unable to reach it, spams the log with messages:

Failed to connect to system bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory

If I start the dbus-service manually, pulseaudio will log:

... : [(null)] oss-util.c: '/dev/dsp0' doesn't support full duplex
... : [(null)] oss-util.c: '/dev/dsp1' doesn't support full duplex
... : [(null)] oss-util.c: '/dev/dsp2' doesn't support full duplex
... : [(null)] oss-util.c: '/dev/dsp3' doesn't support full duplex

and shut up. Why does it need to talk to the system-wide dbus? What will I gain by enabling the system-wide service?

1 Answer 1

2

Why does it need to talk to the system-wide dbus?

It tries to talk to the system-wide dbus in order to set itself as high priority and real time.

See:

https://github.com/pulseaudio/pulseaudio/blob/v13.0/src/pulsecore/core-util.c#L706-L717

https://github.com/pulseaudio/pulseaudio/blob/v13.0/src/pulse/util.c#L406-L417

https://github.com/pulseaudio/pulseaudio/blob/v13.0/src/pulsecore/rtkit.c

What will I gain by enabling the system-wide service?

Nothing on FreeBSD. Near as I can tell, RealTimeKit isn't available on FreeBSD. (The "need" to do so is not really there, though the code tries to do so anyway.) It's README says Linux is required:

https://git.0pointer.net/rtkit.git/tree/README#n217

It looks like if it fails to connect to dbus it retries but if it connects to dbus and fails to set priority/realtime it returns an error and doesn't retry.

2
  • Khm, seems like FreeBSD-port should remove that section of the code then, eh?
    – Mikhail T.
    Commented Apr 21, 2021 at 15:25
  • Perhaps, or add an #if defined(__linux__) in it, similar to what's in rtkit.c, if looking for something more upstream-able. Commented Apr 21, 2021 at 17:37

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .