[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <alpine.LFD.1.00.0804020952030.14670@woody.linux-foundation.org>
Date: Wed, 2 Apr 2008 10:09:16 -0700 (PDT)
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: Takashi Iwai <tiwai@...e.de>
cc: akpm@...ux-foundation.org, perex@...ex.cz,
linux-kernel@...r.kernel.org
Subject: Re: [GIT PULL] ALSA post-2.6.25-rc3 fixes
Takashi,
I just tried to suspend my mac mini with sound running on my box that I
test Fedora 9 on, and it all suspended and resumed ok, but on resume audio
didn't work.
I could restart the X session, and audio was ok, so the actual driver was
ok, but some state didn't restore well.
I *think* the problem may be due to this message which happened right
after the resume:
Apr 2 09:50:47 macmini pulseaudio[2296]: module-alsa-sink.c: Got POLLERR from ALSA
and I wonder what ALSA does over a suspend. Yes, it can be a pulseaudio
bug too (and even if it's not a pulseaudio bug I suspect pulseaudio could
work aroun this by re-initializing when it gets POLLERR), but the thing
is, suspend/resume *should* generally be invisible from user space!
So the POLLERR seems wrong, and I assume it is coming from
snd_pcm_playback_poll() and the runtime->status->state has been scrogged
by the suspend/resume cycle.
The PCM code seems to set the state to SNDRV_PCM_STATE_SUSPENDED on
suspend and resume it from suspended_state, but maybe there's some path
that misses this?
This is Intel HDA audio, in case it mattes (but none of the POLLERR code
seems to have anything to do with the low-level drivers).
Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists