'Twas brillig, and Colin Guthrie at 25/03/11 23:36 did gyre and gimble: > 'Twas brillig, and Colin Guthrie at 25/03/11 23:09 did gyre and gimble: >> 'Twas brillig, and Colin Guthrie at 28/02/11 20:26 did gyre and gimble: >>> Hi, >>> >>> Just cataloguing my issues so we don't forget.... >>> >>> 1. It seems that when running pulseaudio -k, that the daemon terminates >>> pretty brutally... I'm not yet sure if the daemon dies horribly or just >>> doesn't unload the modules properly. Due to this, the X11 properties on >>> the root window are left over (because they were inserted by >>> module-x11-publish). Due to this, the daemon will not autospawn or be >>> started properly. >>> >>> This indicates two separate problems: >>> a) The module shutdown process is not quite working right. >>> b) The code that detects whether the connection params (in the left >>> over x11 props) are meant to be local (which indicates a crash) so that >>> autospawn or manual startup will proceed successfully. >> >> OK, I've not debugged part a) here but I've taken a look at b). > > OK, I've debugged part a) now.... and I suspect it's probably also > something Tanu will have to comment on. > > During a normal shut down, the pa_core is unreffed. Normally this will > result in the refcnt reaching zero and the core_free() function being > called. > > This normally works fine, but when the dbus protocol is loaded, it refs > the core and in so doing, it effectively prevents the clean shutdown of > the daemon. > > I suspect that we'll need to handle dbus protocol tidy up specifically > by unloading it in the daemon/main.c or find some way to not ref the > core in the dbus stuff - is it actually safe enough to simply not call > pa_core_ref/pa_core_unref? (with the exception being the pa_core_unref > in daemon/main.c obviously!) > > Any other ideas welcome too of course :) FWIW, the attached patch seems to work for me... simply not ref'ing the core. If this is OK, then I'll push it. Cheers Col -- Colin Guthrie gmane(at)colin.guthr.ie http://colin.guthr.ie/ Day Job: Tribalogic Limited [http://www.tribalogic.net/] Open Source: Mageia Contributor [http://www.mageia.org/] PulseAudio Hacker [http://www.pulseaudio.org/] Trac Hacker [http://trac.edgewall.org/] -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: 0001-dbus-Do-not-refcnt-the-core.patch URL: <http://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20110326/cef2a359/attachment.asc>