On Wed, 2008-03-26 at 02:13 +0100, Lennart Poettering wrote:
On Wed, 26.03.08 12:04, Andrew Bartlett (abartlet@samba.org) wrote:
The best thing to do is to use the DBus session bus. Have pulseaudio grab a bus name such as org.pulseaudio.SessionDaemon.
Uh? Grab a name for nothing? Also, this would prohibit multiple instances of PA for different users.
Another very useful way to deal with this situation (which is what Samba does) is to take an fcntl lock on the PID file. This will nicely go away with the process, and clearly no other process will grab a lock on a pulse-audio.pid file.
We already use POSIX locking for making sure that access to the PID file is properly serialized.
Seriously; use D-Bus and abstract sockets, and then you can avoid all the icky, nasty races that are inherent with PID files. PID files need to die.
Dan
Lennart
-- Lennart Poettering Red Hat, Inc. lennart [at] poettering [dot] net ICQ# 11060553 http://0pointer.net/lennart/ GnuPG 0x1A015CC4