[alsa-devel] HD-audio modularization
Florian Mickler
florian at mickler.org
Sun Feb 8 11:20:13 CET 2009
On Wed, 03 Dec 2008 15:25:02 +0100
Takashi Iwai <tiwai at suse.de> wrote:
> At Fri, 28 Nov 2008 11:34:35 +0100,
> I wrote:
> > A known issue is that "alsasound stop" may not work with this
> > because of the explicit module refcount without dependency. But
> > it's a script problem, basically. The similar problem must be
> > there for snd-aoa, for example, too.
>
> FYI, the hda-modularization patches are now merged to master branch
> on sound git tree. The snapshot tarball includes this change as well.
Hey! My system doesn't shutdown anymore! And i found it is the
alsasound-stop problem.
Is there no way to have snd_hda_intel listed in the used-by column of
lsmod for snd_hda_codec_analog ?
how should that ''script problem'' be solved?
up until now, the gentoo-initscript takes the lsmod output and removes
recursively the dependancies of the /^snd_/ modules.
a simple shootdown-script doesn't work:
--------------------------------------------
#!/bin/sh
unload_module_my() {
echo "Unloading: $1"
rmmod -v --wait "$1"
echo $?
}
unload_modules_26() {
# First of all, remove the snd module and all the modules depending
# on it, this should remove already most of ALSA modules.
UNLOAD_MODULES_LIST=
lsmod | grep -q "^snd[[:space:]]" && rmmod --wait "snd"
&
wait
# Then find the remaining ones, and handle them too.
for module in $(lsmod | sed -n -e
's/^\(snd[^ ]*\) .*/\1/p'); do unload_module_my
"${module}" & done
wait
lsmod | grep -vq "^snd"
}
unload_modules_26
-----------------------------------------------
dosn't work.
it gives:
Unloading: snd_pcm_oss
rmmod snd_pcm_oss, wait=yes
Unloading: snd_mixer_oss
Unloading: snd_hda_codec_analog
rmmod snd_mixer_oss, wait=yes
rmmod snd_hda_codec_analog, wait=yes
Unloading: snd_hda_intel
Unloading: snd_hda_codec
rmmod snd_hda_intel, wait=yes
rmmod snd_hda_codec, wait=yes
Unloading: snd_pcm
Unloading: snd_page_alloc
rmmod snd_pcm, wait=yes
rmmod snd_page_alloc, wait=yes
Unloading: snd_timer
rmmod snd_timer, wait=yes
0
0
ERROR: Removing 'snd_pcm': Resource temporarily unavailable
1
0
ERROR: Removing 'snd_hda_codec': Resource temporarily unavailable
0
1
ERROR: Removing 'snd_page_alloc': Resource temporarily unavailable
ERROR: Removing 'snd_timer': Resource temporarily unavailable
1
1
how is one supposed to get the unload-ordering, to do a step by step
unload?
Sincerely,
Florian
More information about the Alsa-devel
mailing list