Comment 31 for bug 367671

Revision history for this message
danmb (danmbox) wrote :

Thanks David. I am streaming from qmmp, and I have completely removed gstreamer0.10-pulseaudio (and, yes, as per comment #25, I have a backported natty pulseaudio).

I have performed the steps I planned in #28 and have obtained several backtraces. They all look the same. Strangely, the kernel sends SIGXCPU (due to real-time CPU usage reaching the soft RLIMIT_RTTIME) in a write() call. The setrlimit(2) man page says that blocking calls reset the RTTIME count.

#0 0x0012d422 in ?? ()
#1 0x00475edb in write () at ../sysdeps/unix/syscall-template.S:82
#2 0x00153a55 in pa_fdsem_post (f=0x806e178) at pulsecore/fdsem.c:205
#3 0x0013cb0f in push (l=0x8071bc8, p=0x8, wait_op=false) at pulsecore/asyncq.c:161
#4 0x0013d291 in pa_asyncq_post (l=0x8071bc8, p=0x807a620) at pulsecore/asyncq.c:203
#5 0x0013c1ee in pa_asyncmsgq_post (a=0x8071a90, object=0x80b3ac8, code=7, userdata=0x0,
    offset=0, chunk=0xbffff570, free_cb=0) at pulsecore/asyncmsgq.c:139
#6 0x009811d7 in pstream_memblock_callback (p=0x80864d8, channel=0, offset=0,
    seek=PA_SEEK_RELATIVE, chunk=0xbffff570, userdata=0x8092228)
    at pulsecore/protocol-native.c:4445
#7 0x001dd20b in ?? () from /usr/lib/libpulsecommon-0.9.22.so
#8 0x001c823e in ?? () from /usr/lib/libpulsecommon-0.9.22.so
#9 0x0021b5fb in pa_mainloop_dispatch () from /usr/lib/libpulse.so.0
#10 0x0021bb11 in pa_mainloop_iterate () from /usr/lib/libpulse.so.0
#11 0x0021bbd4 in pa_mainloop_run () from /usr/lib/libpulse.so.0
#12 0x08052e85 in main (argc=1, argv=0xbffff834) at daemon/main.c:974

Patch attached.