All of lore.kernel.org
 help / color / mirror / Atom feed
From: James Courtier-Dutton <James@superbug.demon.co.uk>
To: "P. Christeas" <p_christ@hol.gr>
Cc: Takashi Iwai <tiwai@suse.de>, alsa-devel@lists.sourceforge.net
Subject: Re: Reproducible deadlock w. alsa/maestro3 when sleeping (ACPI,) 2.6.0-test1
Date: Wed, 16 Jul 2003 16:18:48 +0100	[thread overview]
Message-ID: <3F156CD8.6010308@superbug.demon.co.uk> (raw)
In-Reply-To: <200307161803.48574.p_christ@hol.gr>

P. Christeas wrote:
>>Takashi Iwai wrote:
>>
>>>At Mon, 14 Jul 2003 19:17:22 +0300,
>>>
>>>P. Christeas <p_christ@hol.gr> wrote:
>>>
>>>>I have been experiencing some fully reproducible deadlock when waking
>>>>from sleep, using artsd over ALSA.
>>>>The scenario is:
>>>>I use ALSA, with the maestro3 device and everything else compiled as
>>>>modules. From userspace, I launch artsd, which uses its native ALSA
>>>>support to connect to /dev/pcmXXXXX .
>>>>I only have a custom script, which sleeps the machine by a 'echo 1>
>>>>/proc/acpi/sleep' . It does NOT stop alsa .
>>>
>>>could you check whether m3_suspend() and m3_resume() in
>>>sound/pci/maestro3.c are really called?
>>>
>>>
>>>Takashi
>>
>>OK, I did that.  I put two messages in both functions of the maestro3
>>driver. I suspended/resumed the machine. Both functions had been called.
>>
>>This time, I did NOT have 'artsd' (i.e. the client) loaded. What happened
>>was that the module was properly restored and I could load (and use) artsd
>>even after the resume.
>>That brings me to the first assumption/question I have made: is there
>>something wrong if we suspend two parts (one module and a userspace
>>process), while they inter-communicate through the /dev/* interface?
>>
>>
> 
> In a second test, I have also added messages at the end of these functions. 
> They surely don't exit early indeed.
> 
> Has anybody else managed to reproduce the bug?
> Does it happen with other drivers (say, PCI cards w. pcm interface)?
> 
> procedure:
> 	(read the last step first; it is a warning)
> 	1. load the sound module, like 'modprobe snd-maestro3'
> 	2. load the client ("artsd" should be the one, others may eventually release 
> the descriptor. If you want, you could give them a try as well.) 
> 	3. Suspend, S1, NOT with an all-capable script. The script you use must not 
> try to bring down ALSA.
> 	4. Resume.
> 	5. Check the state of the "artsd" (or equivalent) process.
> 
> 	W. Note that if the process is waiting for I/O, you can do nothing but 
> reboot.
> 
> 
> 
I get a similar sort of problem, but that is with an USB sound card, and 
one unplugs the usb cable.
The process (in my case a media appication) is waiting for a return from 
a call to alsa-lib, but the return from the call never happens.
Maybe suspending a PCI sound card is similar to unplugging a USB sound 
card. In both cases, the device does not respond anymore, but alsa-lib 
fails to return an error to the application, but instead never returns.

Cheers
James






-------------------------------------------------------
This SF.net email is sponsored by: VM Ware
With VMware you can run multiple operating systems on a single machine.
WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the
same time. Free trial click here: http://www.vmware.com/wl/offer/345/0

  reply	other threads:[~2003-07-16 15:18 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-07-14 16:17 Reproducible deadlock w. alsa/maestro3 when sleeping (ACPI,) 2.6.0-test1 P. Christeas
2003-07-14 16:17 ` P. Christeas
2003-07-16 11:47 ` Takashi Iwai
2003-07-16 11:47   ` [Alsa-devel] " Takashi Iwai
2003-07-16 14:18   ` P. Christeas
2003-07-16 14:18     ` [Alsa-devel] " P. Christeas
2003-07-16 15:03     ` P. Christeas
2003-07-16 15:03       ` [Alsa-devel] " P. Christeas
2003-07-16 15:18       ` James Courtier-Dutton [this message]
2003-07-17 16:14         ` P. Christeas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3F156CD8.6010308@superbug.demon.co.uk \
    --to=james@superbug.demon.co.uk \
    --cc=alsa-devel@lists.sourceforge.net \
    --cc=p_christ@hol.gr \
    --cc=tiwai@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.