After upgrading my alsa stuff to 0.9.8, a new version of /etc/init.d/alsasound was installed. The new version always tries to load (modprobe) all alsa oss-related modules. I don't use the oss-emulation in alsa, with the result that I get a bunch of errors and failed insmod's when alsasound runs during boot. Reproducible: Always Steps to Reproduce: 1. Remove all oss-stuff in /etc/module.d/alsa 2. Do update-module 3. Reboot - that's it I guess. One may also have to the kernel configured without any oss-stuff. Expected Results: Test for use of oss before attempting to load all alsa modules called "*-oss" Changing the lines < OSS="$(modprobe -l | grep "snd.*oss" | sed -e "s:\/.*\/::" -e "s:\..*::")" < for i in ${OSS} < do < DRIVERS="${i} ${DRIVERS}" < done Into > # Test for use of OSS > if modprobe -c | grep -q "oss$" ; then > einfo "Using ALSA OSS emulation" > OSS="$(modprobe -l | grep "snd.*oss" | sed -e "s:\/.*\/::" -e "s:\..*::")" > # Add oss modules to list > for i in ${OSS} > do > DRIVERS="${i} ${DRIVERS}" > done > fi solves the problem.
To avoid replacing one problem with another, my suggested fix should really be: # Test for use of OSS if modprobe -c | grep -q "snd.*oss$" ; then # <<<< More complete grep expression einfo "Using ALSA OSS emulation" OSS="$(modprobe -l | grep "snd.*oss" | sed -e "s:\/.*\/::" -e "s:\..*::")" # Add oss modules to list for i in ${OSS} do DRIVERS="${i} ${DRIVERS}" done fi
in cvs