[alsa-devel] [ALSA hda 3.4-rc] suspend2ram regression in snd_hda_intel

Takashi Iwai tiwai at suse.de
Sun May 6 12:37:12 CEST 2012

At Sun, 06 May 2012 12:32:14 +0400,
Konstantin Khlebnikov wrote:
> Konstantin Khlebnikov wrote:
> > Mainline commit 785f857d1cb0856b612b46a0545b74aa2596e44a
> > ("ALSA: hda - Set codec to D3 forcibly even if not used")
> > breaks sound for my notebook (thinkpad x220),
> > looks like codec cannot wake from power-save state after resume.
> > After reverting looks like all works fine.
> >
> > how to reproduce:
> > * unplug the power cord (to enable hda power safe mode)
> > * play something and stop
> > * wait until the background noise disappears (codec went into power-save mode)
> > * suspend
> > * resume
> > * play something again and hear the silence
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to majordomo at vger.kernel.org
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at  http://www.tux.org/lkml/
> Bump

It's a weekend, so don't expect quick responces from any normal person

Which 3.4-rc did you try?  There was a known problem with this codec
regarding the power-up sequence, but this should have been fixed in
the very recent version.

If the latest Linus tree still shows the problem, try sound git tree
master or for-next branch.

Then attach alsa-info.sh output (run with --no-upload option) before
and after S3 (i.e. working and non-working states).

> BTW, I don't see any locks around hda power-save code, for example  hda_power_work() reads
> codec->power_on and codec->power_count without any locks. This seems racy.

Yeah, we may add an extra spinlock.  But it's not too critical for the
whole operation, so I didn't care much so far.  At most, you'll miss one
power-save cycle.  Maybe a good time to fix it now for 3.5.



More information about the Alsa-devel mailing list