[pulseaudio-discuss] pulseaudio daemon not responging
Stefan Stefanov
selectany at gmail.com
Thu Nov 22 04:51:11 PST 2012
Just used gdb and find the exact place of hanging.
(Just to mention that now I debug the same system as mine, but in the
VM. Problem with haging in VM also occurs.)
Result of debugging with gdb:
-------------------------------------------------------------------------------------------------------------------------
....
....
163 pa_mutex_lock(a->mutex);
(gdb) n
164 pa_assert_se(pa_asyncq_push(a->asyncq, &i, TRUE) == 0);
(gdb) n
165 pa_mutex_unlock(a->mutex);
(gdb) n
E: [alsa-sink] alsa-util.c: snd_pcm_avail(0 returned a value that is
exceptioanally large: 721456 bytes (4089 ms).
E: [alsa-sink] alsa-util.c: Most likely this is a bug in the ALSA
driver '(null)', Please report this issue to the ALSA developers.
E: [alsa-sink] alsa-util.c: snd_pcm_dump():
E: [alsa-sink] alsa-util.c: Hardware PCM card 0 'Dummy' device 0 subdevice 0
E: [alsa-sink] alsa-util.c: Its setup is:
167 pa_semaphore_wait(i.semaphore);
(gdb) n
....
....
E: [alsa-sink] alsa-util.c: stream : PLAYBACK
E: [alsa-sink] alsa-util.c: access : MMAP_INTERLEAVED
E: [alsa-sink] alsa-util.c: format : S16_LE
E: [alsa-sink] alsa-util.c: subformat : STD
E: [alsa-sink] alsa-util.c: channels : 2
E: [alsa-sink] alsa-util.c: rate : 44100
E: [alsa-sink] alsa-util.c: exact rate : 44100 (44100/1)
E: [alsa-sink] alsa-util.c: msbits : 16
E: [alsa-sink] alsa-util.c: buffer_size : 4400
E: [alsa-sink] alsa-util.c: period_size : 1102
E: [alsa-sink] alsa-util.c: period_time : 24988
E: [alsa-sink] alsa-util.c: tstamp_mode : ENABLE
E: [alsa-sink] alsa-util.c: period_step : 1
E: [alsa-sink] alsa-util.c: avail_min : 1102
E: [alsa-sink] alsa-util.c: period_event : 1
E: [alsa-sink] alsa-util.c: start_threshold : -1
E: [alsa-sink] alsa-util.c: stop_threshold : 1155530752
E: [alsa-sink] alsa-util.c: silence_threshold : 0
E: [alsa-sink] alsa-util.c: silence_size : 0
E: [alsa-sink] alsa-util.c: boundary : 1155530752
E: [alsa-sink] alsa-util.c: appl_prt : 48488
E: [alsa-sink] alsa-util.c: hw_prt : 18832086
HANGING HERE !!!
-----------------------------------------------------------------------------------------------------------
As you can see it hangs in pa_semaphore_wait function with several
alsa-driver related errors.
Obviously ALSA driver bug. As I know ALSA is a kernel module and I'm
using linux 3.6.6.
What do you suggest to do now?
2012/11/22 Tanu Kaskinen <tanuk at iki.fi>:
> On Thu, 2012-11-22 at 00:22 +0200, Stefan Stefanov wrote:
>> Ok.
>> Here is a report after simple debugging with "traps" like pa_log("test");
>> The call stack:
>>
>> pa_alsa_sink_new -> alsa-sink.c
>> pa_sink_put(u->sink) -> sink.c
>> pa_assert_se(sink_set_state(s, PA_SINK_IDLE) == 0) -> sink.c -----> it
>> hangs here.
>>
>> I'll continue debugging tomorrow.
>
> The exact place of hanging can probably be found with gdb:
>
> gdb pulseaudio
> (gdb) run -vvv
> <wait until log output stops>
> Ctrl-C
> (gdb) thread apply all bt
>
> --
> Tanu
>
More information about the pulseaudio-discuss
mailing list