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. Maarten