From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MW9Ss-0007of-FC for qemu-devel@nongnu.org; Wed, 29 Jul 2009 09:45:06 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MW9Sr-0007nG-Eb for qemu-devel@nongnu.org; Wed, 29 Jul 2009 09:45:05 -0400 Received: from [199.232.76.173] (port=55962 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MW9Sr-0007mn-1D for qemu-devel@nongnu.org; Wed, 29 Jul 2009 09:45:05 -0400 Received: from fe02x03-cgp.akado.ru ([77.232.31.165]:58137 helo=akado.ru) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MW9Sq-0002b5-IF for qemu-devel@nongnu.org; Wed, 29 Jul 2009 09:45:04 -0400 Date: Wed, 29 Jul 2009 17:45:02 +0400 (MSD) From: malc Subject: Re: [Qemu-devel] [PATCH] alsa broken when the host is suspended (or hibernated) In-Reply-To: <87fxcf64zy.fsf@nemi.mork.no> Message-ID: References: <1248864666-31387-1-git-send-email-bjorn@mork.no> <87fxcf64zy.fsf@nemi.mork.no> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?utf-8?Q?Bj=C3=B8rn_Mork?= Cc: qemu-devel@nongnu.org On Wed, 29 Jul 2009, Bjrn Mork wrote: > malc writes: > > > Thank you. I've massaged the patch a bit: > > > > a. Trimmed the comment line to fit 80 columns > > b. Suppressed tabs > > Thanks. Guess I should have read the qemu coding standard > first... Shame on me. > > > c. Added -ESTRPIPE handling to alsa_run_in > > d. Changed the verbose message to indicate which of the streams > > is being resumed (input/output) > > > > It would be very nice if you could verify that it still works since > > my machine is not capable of suspending nor hibernating, it would be > > very informative if you could run audio capture inside the guest to > > verify c. and d. > > Oh, didn't event think about sending audio the other way. I must admit > that I'm quite new to using audio in QEMU. > > I tried your modified patch with Windows XP as a client, using the > Windows "Sound Recorder" app for testing audio capture. I have it > working up until the host is suspended, but cannot make it work after > resuming. Nothing is captured and nothing is logged to the QEMU > monitor. The "Sound Recorder" app just sits there after pressing record, > without ever changing the stream position from 0,00 sec. Thanks. > > Resuming audio output of course still works fine with your modifications: > > (qemu) alsa: Resuming suspended output stream Aha, that means only attempts to write audio result in ESTRPIPE and apparently no errors are generated when trying to read, what i wonder is what actually happens on an attempt to read: does the call block, 0 is returned, and whether in fact the code calls snd_pcm_readi at all. > > But audio capture still don't work, even if output is resumed. Does the something like arecord work across suspend/resume cycle? Does ALSAs oss emulation playback/capture work at all? In case of arecord working perhaps the answers could be found inside its sources? > > > The tree is at: > > http://repo.or.cz/w/qemu/malc.git?a=shortlog;h=refs/heads/alsa > > > > Or you can just apply first commit's patch. > > > > [..snip..] > > > > P.S. Perhaps you could also come up with a better subject line? > > I suspect that my suggestions will be affected by my limited view of the > world :-) > > I'm not sure what you do have in mind, but how about > "alsa: add host resume support" > ? alsa: add host suspend/resume support ? > > But I guess we'll have to fix the audio capture part before making such > claims. That would have been great, if not your original patch, modulo whitespace, issues will be applied, half a measure but certainly better than nothing. -- mailto:av1474@comtv.ru