FS#3710 - Upgrade to kernel 2.6.15-2 breaks alsa

Attached to Project: Arch Linux
Opened by ozar (ozar) - Thursday, 05 January 2006, 16:16 GMT
Last edited by Tobias Powalowski (tpowa) - Friday, 06 January 2006, 18:27 GMT
Task Type Bug Report
Category Kernel
Status Closed
Assigned To Judd Vinet (judd)
Architecture not specified
Severity Medium
Priority Normal
Reported Version 0.7 Wombat
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

I've ruled out udev as the culprit, but after upgrading to the latest kernel, trying to run alsamixer or amixer results in the following error messages:

ALSA lib simple_none.c:1216:(simple_add1) helem (MIXER,'Front Playback Volume',0,0,0) appears twice or more

alsamixer: function snd_mixer_load failed: Invalid argument

Many others have reported running into the same issue on the forums. Some managed to get it working, but their fixes didn't work on my box. Googling these errors only give a few foreign language pages that I can't decipher. I've already tried reinstalling alsa and reruning alsaconf, but that gives the same errors. Playing with alsactl restore didn't help, and I've tried clearing out modprobe.conf, but that doesn't work either. Alsa still failed even after reinstalling Arch using the new kernel.

My /etc/asound.state file is attached. I am using hwdetect, and here's the output of lsmod:

Module Size Used by
uhci_hcd 32016 0
ehci_hcd 33160 0
usbhid 48928 0
usblp 11904 0
usb_storage 75072 0
skge 36240 0
sk98lin 178528 0
ppp_generic 28052 0
slhc 6656 1 ppp_generic
snd_emu10k1 121764 0
snd_rawmidi 21152 1 snd_emu10k1
snd_ac97_codec 95136 1 snd_emu10k1
snd_ac97_bus 2176 1 snd_ac97_codec
snd_util_mem 3840 1 snd_emu10k1
snd_hwdep 7712 1 snd_emu10k1
snd_seq_oss 33408 0
snd_seq_midi_event 6400 1 snd_seq_oss
snd_seq 51984 4 snd_seq_oss,snd_seq_midi_event
snd_seq_device 7436 4 snd_emu10k1,snd_rawmidi,snd_seq_oss,snd_seq
snd_pcm_oss 50848 0
snd_pcm 84100 3 snd_emu10k1,snd_ac97_codec,snd_pcm_oss
snd_timer 22148 3 snd_emu10k1,snd_seq,snd_pcm
snd_page_alloc 8840 2 snd_emu10k1,snd_pcm
snd_mixer_oss 17920 1 snd_pcm_oss
snd 49124 11 snd_emu10k1,snd_rawmidi,snd_ac97_codec,snd_hwdep,snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_pcm,snd_timer,snd_mixer_oss
soundcore 8160 1 snd
nvidia 4084912 12
shpchp 44768 0
pci_hotplug 26692 1 shpchp
parport_pc 26436 1
serio_raw 6148 0
pcspkr 2052 0
emu10k1_gp 3072 0
gameport 12424 2 emu10k1_gp
evdev 8064 0
i2c_i801 8204 0
i2c_core 18176 1 i2c_i801
rtc 10932 0
ppdev 7812 0
lp 9860 0
parport 33736 3 parport_pc,ppdev,lp
hw_random 4756 0
intel_agp 21404 1
agpgart 29904 2 nvidia,intel_agp
usbcore 121604 6 uhci_hcd,ehci_hcd,usbhid,usblp,usb_storage
ext3 133256 2
jbd 58132 1 ext3
ide_floppy 18048 0
ide_cd 39556 0
cdrom 38688 1 ide_cd
ide_disk 16000 4
piix 9732 0 [permanent]
generic 4356 0 [permanent]
ide_core 120272 6 usb_storage,ide_floppy,ide_cd,ide_disk,piix,generic

Thanks for any help in getting this fixed.

ozar
This task depends upon

Closed by  Judd Vinet (judd)
Monday, 23 January 2006, 17:45 GMT
Reason for closing:  Deferred
Additional comments about closing:  Seems broken with older SBLive! cards in upstream.
Comment by Jan de Groot (JGC) - Thursday, 05 January 2006, 19:41 GMT
What if you delete the asound.state file? Now and then these alsa guys decide that your mixer settings aren't compatible between releases anymore. I'm seeing this problem with almost every major kernelversion or every alsa upgrade.
Comment by ozar (ozar) - Thursday, 05 January 2006, 21:47 GMT
Hey, JGC - thanks for the suggestion, but I've already tried that and it didn't work, either. Hehe... this latest series of Arch upgrades has really kicked some serious ass, hasn't it? ;-)

I do know it's the kernel though, because I reinstalled all the upgrade files one program at a time, saving the kernel for last. Alsa worked between each upgrade file as they went on, but once the new kernel was installed, no more alsamixer/amixer. Guess I'm going to have to revert back to the previous kernel until this one works a little better. :-(

Thanks again for the suggestion.
Comment by ozar (ozar) - Friday, 06 January 2006, 19:44 GMT
Argh... can't believe I forgot to mention my card is Sound Blaster Live ;)
Comment by Judd Vinet (judd) - Saturday, 07 January 2006, 21:13 GMT
Hi ozar,

Very strange, I have a SB Live here and it's working fine on 2.6.15-2. I use hwdetect and don't have any sound stuff in my modprobe.conf. I wonder if the latest ALSA has broken with certain revisions of certain sound cards.

Here's my card info from the PCI bus. It might be a different revision than yours.

[jvinet@mars ~]$ lspci -vvv -s 01:08.0
01:08.0 Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 07)
Subsystem: Creative Labs: Unknown device 8064
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 64 (500ns min, 5000ns max)
Interrupt: pin A routed to IRQ 18
Region 0: I/O ports at b400 [size=32]
Capabilities: <available only to root>
Comment by ozar (ozar) - Sunday, 08 January 2006, 00:42 GMT
howdy, judd... thanks a bunch for the assistance. :-)

here's mine (as it looks using the 2.6.14 kernel - because it works):

02:0b.0 Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 0a)
Subsystem: Creative Labs: Unknown device 8066
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 64 (500ns min, 5000ns max)
Interrupt: pin A routed to IRQ 18
Region 0: I/O ports at df80 [size=32]
Capabilities: [dc] Power Management version 1
Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-

02:0b.1 Input device controller: Creative Labs SB Live! MIDI/Game Port (rev 0a)
Subsystem: Creative Labs Gameport Joystick
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 64
Region 0: I/O ports at dfe0 [size=8]
Capabilities: [dc] Power Management version 1
Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-

I've run into this issue whether upgrading, or fresh installing. I get the same errors either way.

With the upgrade path, amixer/alsamixer works fine with the 2.6.14 kernel (it works with the latest udev and initrd installed, too). Install the new kernel, though, and no more ability to use the mixer. I do have some entries in modprobe.conf that were put there by running alsaconf, but I've tried removing them and still get the errors.

With a fresh install from the new iso, all seems well until I install alsa-utils and alsa-lib, then run alsaconf. As soon as I try running amixer/alsamixer on the new kernel, the errors appear, but no mixer control. It appears to be happening only and always through the introduction of the new kernel. It's always worked fine with the other kernels.

Hope this helps. I'm back to the older kernel until a fix can be found.

Thanks again for your help! :)

ozar
Comment by Judd Vinet (judd) - Sunday, 08 January 2006, 02:30 GMT
So you can play to the device fine, you just can't adjust he mixer settings?

Does OSS mixing work at all? Eg, using aumix or similar?

If you manually edit /etc/asound.state and remove the control.52 block (your second "Front Playback Volume" setting) does anything change?

What about another kernel, such as archck? I'm almost sure this must be an upstream issue, either with alsa or the kernel itself. If we could isolate the culprit, it would make things a little easier.
Comment by ozar (ozar) - Sunday, 08 January 2006, 04:09 GMT
No, I'm not hearing any sound at all (hence my need to use a mixer) whereas I did have sound before the upgrade and/or fresh install. I have a minimal system and don't believe I have any oss mixers installed, at least I've not been able to find any. Yes, I've already tried deleting the control.52 block but it didn't help, and I've tried deleting the 15 block but nothing there, either.

Haven't tried the archck kernel although I have been considering it.

It might be upstream because I went to the alsa bug tracker and found where several others were having this problem over the last few days and with the 2.6.15 kernel. Bug ID#: 0001681

One person found a hack/fix as follows:

"I have solved this problem with simple "dirty hack" (may be it's not a right way, but it works for me): in the alsa-kernel/pci/emu10k1/emumixer.c there is local array called emu10k1_remove_ctls. If you add a string called "Front Playback Volume" into this array then error will disappear.

Unfortunately, I can't check how this solution will work in 5.1 or other advanced environment, but there is a "Front" control in alsamixer available that allows to manage "Front" speakers."

One of the devs there responded... "tiwai: Fixed on CVS. Thanks."

Now, all that said, I was not able to find the file that the user refers to, so no luck yet with fixing this.

Thanks again for your help.

ozar
Comment by ozar (ozar) - Sunday, 08 January 2006, 15:24 GMT
Good morning, Judd... just wanted to let you know I've installed aumix but still have no sound although the mixer does seem to be working.

ozar

Comment by ozar (ozar) - Saturday, 21 January 2006, 15:02 GMT
Out of curiosity, I just tried the new 2.6.15.1-1 kernel and that one also breaks alsa in the same way.
Comment by ozar (ozar) - Sunday, 22 January 2006, 21:58 GMT
Well, Judd... solved it myself by going ahead and buying a later version of the SoundBlaster Live audio card (got the 7.1 channel card for about $30) and it works fine with the new 2.6.15 kernels. I'm going to mark the forum thread I started "SOLVED" because it's apparently just some of the older SB Live cards that don't work properly with the new kernel. It appears that it's at least some of the 5.1 channel cards that don't work. Hope this helps someone.

Not sure if you want to close the bug report or not, as it's still a bug although it appears not related to Arch.

Thanks for your help with this matter. :)
Comment by Judd Vinet (judd) - Monday, 23 January 2006, 17:45 GMT
Hi ozar,

Well, glad you figured it out, cuz I was out of ideas. :)

I'll close this since there's not much we can do here. Good to know it only affects older cards. Thanks!

Loading...