Bug 64118

Summary: pa_sink_update_rate() suspend the sink but we rely on module-suspend-on-idle to unsuspend it
Product: PulseAudio Reporter: Javier Jardón <jjardon>
Component: coreAssignee: pulseaudio-bugs
Status: RESOLVED FIXED QA Contact: pulseaudio-bugs
Severity: normal    
Priority: medium CC: arun, lennart
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Javier Jardón 2013-05-01 15:48:28 UTC
I see this trying to play a 48000 stream:

I//system/bin/pulseaudio(  250): D: [pulseaudio] sink.c: Suspend cause of sink hp_wireless is 0x0004, suspending
I//system/bin/pulseaudio(  250): I: [alsa-sink] alsa-sink.c: Device suspended...
I//system/bin/pulseaudio(  250): I: [pulseaudio] alsa-sink.c: Updating rate for device hw:1,0, new rate is 48000
I//system/bin/pulseaudio(  250): I: [pulseaudio] sink.c: Changed sampling rate successfully
I//system/bin/pulseaudio(  250): I: [pulseaudio] resampler.c: Using resampler 'speex-fixed-1'
I//system/bin/pulseaudio(  250): I: [pulseaudio] resampler.c: Using s16le as working format.
I//system/bin/pulseaudio(  250): I: [pulseaudio] resampler.c: Choosing speex quality setting 1.
I//system/bin/pulseaudio(  250): D: [pulseaudio] memblockq.c: memblockq requested: maxlength=33554432, tlength=0, base=4, prebuf=0, minreq=1 maxrewind=0
I//system/bin/pulseaudio(  250): D: [pulseaudio] memblockq.c: memblockq sanitized: maxlength=33554432, tlength=33554432, base=4, prebuf=0, minreq=4 maxrewind=0
I//system/bin/pulseaudio(  250): D: [pulseaudio] sink-input.c: Updated resampler for sink input 1
I//system/bin/pulseaudio(  250): D: [alsa-sink] sink-input.c: Requesting rewind due to uncorking
I//system/bin/pulseaudio(  250): D: [alsa-sink] protocol-native.c: Requesting rewind due to end of underrun.
I//system/bin/pulseaudio(  250): D: [alsa-sink] protocol-native.c: Requesting rewind due to end of underrun.

So pulseaudio suspend the sink to change the rate but it doesnt get unsuspended
Loading module-suspend-on-idle fix the problem
Comment 1 Tanu Kaskinen 2013-05-01 16:02:35 UTC
Proposing as a 4.0 release blocker.
Comment 2 Arun Raghavan 2013-05-13 05:07:29 UTC
Is this because you don't have module-suspend-on-idle loaded? I've posted a fix for this, but since it isn't a regression, unless there's a good reason, I'd like to defer to next.
Comment 3 Tanu Kaskinen 2013-05-13 10:48:50 UTC
I'm OK with pushing the fix only to "next".
Comment 4 Arun Raghavan 2013-05-13 11:20:26 UTC
Cool, pushed to next.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.