On my system the daemon fails to start in any case with 'Daemon startup failed', but that is a separate issue and less serious. There seem to be two separate places where pulseaudio --start may hang indefinitely on kfreebsd:
On my system, it is slightly better: E: [(null)] client-conf-x11.c: xcb_connection_has_error() returned true I: [(null)] main.c: Daemon startup successful.
1. after printing 'Daemon startup failed' - the attached patch fixes this hang (I believe some real-time signals are being blocked, which are necessary for kFreeBSD's threads implementation, LinuxThreads, to work properly);
This one is due to usage of sigprocmask(), it behaviour is unspecified in a multi-threaded process, see http://pubs.opengroup.org/onlinepubs/9699919799/functions/sigprocmask.html Upstream should fix it by: --- src/pulsecore/core-util.c +++ src/pulsecore/core-util.c @@ -2503,7 +2503,14 @@ if (sigaddset(&ss, except[i]) < 0) return -1; + /* If POSIX threads are supported use thread-aware + * pthread_sigmask() function */ + +# ifdef HAVE_PTHREAD + return pthread_sigmask(SIG_SETMASK, &ss, NULL); +# else return sigprocmask(SIG_SETMASK, &ss, NULL); +# endif #else return 0; #endif
2. before printing 'Daemon startup failed' - this happens approx. 10x less frequently (so applying the patch is already an improvement) - I'm not sure yet what causes this.
It is not fixed by the patch above. Petr -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org