[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: The new broken world of 2.6, ALSA, and hotplug.



On Tue, Mar 30, 2004 at 04:44:43PM -0800, Scott Robinson wrote:

> To condense, the problem is as such:
> 
> Any user with hotplug and and an alsa enabled kernel will run in to multiple
> problems.

This is now a critical problem, or if it is, it isn't a new one, nor is it
specific to hotplug.

> #1) Hotplug has recently started automatically loading drivers via PCI
> enumeration in its init script. This alone has caused a variety of problems.
> 
> Assuming hotplug doesn't load the OSS drivers first (#238694), it goes ahead
> and loads all the appropriate ALSA drivers... but misses OSS emulation.

I don't see why hotplug should explicitly load the OSS drivers.  If they are
desired, they should either be loaded by ALSA's init script, or (probably
better) set up to load automatically by an /etc/modutils file.

> #2) ALSA's init script is executed after hotplug. The mixer settings are
> then "restored."
> 
> The wrong settings will be applied if your card order changes due to
> hotplug.

These mixer settings are notoriously fragile.  They break with a new release
of ALSA.  They break *horribly* when you upgrade from 2.4 to 2.6.

> #3) ALSA's init script then detects that the drivers are already loaded, and
> assumes this is because ALSA was compiled statically in to the kernel.

As far as I know, this doesn't cause any harm.  The message is misleading,
but the conclusion that it draws from this is OK.

> Is summary:
> 
> All ALSA settings are potentially broken or ignored because of hotplug on
> 2.6 kernels.
>
> Sounds like a hotplug problem, right? Well, not according to the package's
> maintainer. udev is the solution!

udev *is* the solution to this particular problem, and personally, it
doesn't bother me much if all of these fragile workarounds break in order to
make way for the correct solution.

-- 
 - mdz



Reply to: