'Twas brillig, and David Henningsson at 25/09/11 10:15 did gyre and gimble: > On 09/23/2011 04:59 PM, Colin Guthrie wrote: >> 'Twas brillig, and Maarten Bosmans at 23/09/11 09:48 did gyre and gimble: >>> 2011/9/22 Colin Guthrie<gmane at colin.guthr.ie>: >>>> 'Twas brillig, and David Henningsson at 22/09/11 12:41 did gyre and >>>> gimble: >>>>> I'm trying to trace down a crash: >>>>> >>>>> https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/853560 >>>>> https://launchpadlibrarian.net/80418699/ThreadStacktrace.txt >>>>> >>>>> I'm seeing that both threads call "pa_asyncq_write_after_poll" >>>>> simultaneously on the same object, which is module-null-sink's >>>>> thread_mq->outq. The outq writes in the thread and reads from the main >>>>> thread. Therefore it seems like the main thread should not call >>>>> write_after_poll. From what I can see, there almost seems to be a typo >>>>> in asyncmsgq_read_cb (see suggested patch below). >>>>> >>>>> But since this is deep down, has been there for three years without >>>>> causing trouble in the past (for what we know), I'd like a second >>>>> opinion before actually applying this patch. I've just run a a quick >>>>> test here and it didn't seem to break anything. >>>> >>>> As well as not breaking things, does it also fix the problem case? >>>> >>>> Just from the patch posted, it does indeed look like a typo to me! >>> >>> And from the commit that introduced it, it looks like a type too. >>> >>> In 045c1d602dcba57868845ba3270510593c39480f merge glitch-free branch >>> back into trunk (damn you svn-merge commits) >>> pa_asyncmsgq_{before,after}_poll gets renamed to >>> pa_asyncmsgq_read_{before,after}_poll and >>> pa_asyncmsgq_write_{before,after}_poll is introduced. The conversion >>> was wrong there. >> >> Seems conclusive enough. Want to make that a proper patch David? > > Ok, here you go! Thanks, pushed. 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/]