You are not logged in.

#1 2021-02-28 10:48:38

Randoragon
Member
Registered: 2021-02-28
Posts: 2

[SOLVED] ALSA fails to detect sound card after kernel update

Yesterday everything was running just fine. I updated 20 packages before going to sleep, I wake up today and am welcomed by the dreaded "Dummy Output" in PulseAudio. This used to happen to me once every few months, so I just rebooted (which was the usual way to fix it), but "Dummy Output" persisted. So I did some investigation and here are some findings:

$ sudo dmesg | grep snd
[   16.280184] snd_hda_intel 0000:00:1f.3: cannot find the slot for index 0 (range 0-0), error: -16
[   16.280190] snd_hda_intel 0000:00:1f.3: Error creating card!
[   16.280193] snd_hda_intel: probe of 0000:00:1f.3 failed with error -16
[   16.280234] snd_hda_intel 0000:01:00.1: cannot find the slot for index 0 (range 0-0), error: -16
[   16.280237] snd_hda_intel 0000:01:00.1: Error creating card!
[   16.280267] snd_hda_intel: probe of 0000:01:00.1 failed with error -16
[   16.336426] usbcore: registered new interface driver snd-usb-audio
$ aplay -lL
null
    Discard all samples (playback) or generate zero samples (capture)
sysdefault
    Default Audio Device
samplerate
    Rate Converter Plugin Using Samplerate Library
speexrate
    Rate Converter Plugin Using Speex Resampler
jack
    JACK Audio Connection Kit
oss
    Open Sound System
pulse
    PulseAudio Sound Server
speex
    Plugin using Speex DSP (resample, agc, denoise, echo, dereverb)
upmix
    Plugin for channel upmix (4,6,8)
vdownmix
    Plugin for channel downmix (stereo) with a simple spacialization
default
    Default ALSA Output (currently PulseAudio Sound Server)
usbstream:CARD=U0x46d0x825
    USB Device 0x46d:0x825
    USB Stream Output
**** List of PLAYBACK Hardware Devices ****

Yesterday's pacman upgrade, from /var/log/pacman.log:

[2021-02-27T22:15:39+0100] [PACMAN] Running 'pacman -Syu'
[2021-02-27T22:15:39+0100] [PACMAN] synchronizing package lists
[2021-02-27T22:15:39+0100] [PACMAN] starting full system upgrade
[2021-02-27T22:15:44+0100] [ALPM] running '60-mkinitcpio-remove.hook'...
[2021-02-27T22:15:44+0100] [ALPM] running '71-dkms-remove.hook'...
[2021-02-27T22:15:44+0100] [ALPM-SCRIPTLET] ==> dkms remove --no-depmod -m v4l2loopback -v 0.12.5 -k 5.11.1-arch1-1
[2021-02-27T22:15:45+0100] [ALPM-SCRIPTLET] ==> dkms remove --no-depmod -m broadcom-wl -v 6.30.223.271 -k 5.11.1-arch1-1
[2021-02-27T22:15:45+0100] [ALPM-SCRIPTLET] ==> depmod 5.11.1-arch1-1
[2021-02-27T22:15:58+0100] [ALPM] running 'ghc-unregister.hook'...
[2021-02-27T22:15:59+0100] [ALPM] transaction started
[2021-02-27T22:15:59+0100] [ALPM] upgraded babl (0.1.82-1 -> 0.1.84-1)
[2021-02-27T22:15:59+0100] [ALPM] upgraded btrfs-progs (5.10.1-1 -> 5.10.1-2)
[2021-02-27T22:16:00+0100] [ALPM] upgraded enchant (2.2.13-2 -> 2.2.15-1)
[2021-02-27T22:16:14+0100] [ALPM] upgraded libdatrie (0.2.12-2 -> 0.2.13-1)
[2021-02-27T22:16:14+0100] [ALPM] upgraded gegl (0.4.26-1 -> 0.4.28-2)
[2021-02-27T22:16:15+0100] [ALPM] upgraded gimp (2.10.22-1 -> 2.10.22-2)
[2021-02-27T22:16:15+0100] [ALPM] upgraded haskell-mono-traversable (1.0.15.1-112 -> 1.0.15.1-113)
[2021-02-27T22:16:15+0100] [ALPM] upgraded haskell-conduit (1.3.4-41 -> 1.3.4-42)
[2021-02-27T22:16:15+0100] [ALPM] upgraded haskell-sandi (0.5-204 -> 0.5-205)
[2021-02-27T22:16:15+0100] [ALPM] upgraded hedgewars (1.0.0-165 -> 1.0.0-166)
[2021-02-27T22:16:16+0100] [ALPM] upgraded linux (5.11.1.arch1-1 -> 5.11.2.arch1-1)
[2021-02-27T22:16:17+0100] [ALPM] upgraded linux-docs (5.11.1.arch1-1 -> 5.11.2.arch1-1)
[2021-02-27T22:16:19+0100] [ALPM] upgraded linux-headers (5.11.1.arch1-1 -> 5.11.2.arch1-1)
[2021-02-27T22:16:19+0100] [ALPM] upgraded marked (2.0.0-1 -> 2.0.1-1)
[2021-02-27T22:16:19+0100] [ALPM] upgraded nvidia (460.56-1 -> 460.56-2)
[2021-02-27T22:16:19+0100] [ALPM] upgraded python-pyqt5 (5.15.3-1 -> 5.15.3-2)
[2021-02-27T22:16:19+0100] [ALPM] upgraded python-sip4 (4.19.24-1 -> 4.19.25-1)
[2021-02-27T22:16:19+0100] [ALPM] upgraded shellcheck (0.7.1-308 -> 0.7.1-311)
[2021-02-27T22:16:19+0100] [ALPM] upgraded virtualbox-host-modules-arch (6.1.18-13 -> 6.1.18-14)
[2021-02-27T22:16:20+0100] [ALPM] upgraded wine (6.2-1 -> 6.3-1)
[2021-02-27T22:16:20+0100] [ALPM] transaction completed
[2021-02-27T22:16:21+0100] [ALPM] running '30-systemd-binfmt.hook'...
[2021-02-27T22:16:21+0100] [ALPM] running '30-systemd-daemon-reload.hook'...
[2021-02-27T22:16:21+0100] [ALPM] running '30-systemd-udev-reload.hook'...
[2021-02-27T22:16:21+0100] [ALPM] running '30-systemd-update.hook'...
[2021-02-27T22:16:21+0100] [ALPM] running '60-depmod.hook'...
[2021-02-27T22:16:28+0100] [ALPM] running '70-dkms-install.hook'...
[2021-02-27T22:16:28+0100] [ALPM-SCRIPTLET] ==> dkms install --no-depmod -m v4l2loopback -v 0.12.5 -k 5.11.2-arch1-1
[2021-02-27T22:16:33+0100] [ALPM-SCRIPTLET] ==> dkms install --no-depmod -m broadcom-wl -v 6.30.223.271 -k 5.11.2-arch1-1
[2021-02-27T22:16:38+0100] [ALPM-SCRIPTLET] ==> depmod 5.11.2-arch1-1
[2021-02-27T22:16:44+0100] [ALPM] running '90-mkinitcpio-install.hook'...
[2021-02-27T22:16:45+0100] [ALPM-SCRIPTLET] ==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'default'
[2021-02-27T22:16:45+0100] [ALPM-SCRIPTLET]   -> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux.img
[2021-02-27T22:16:45+0100] [ALPM-SCRIPTLET] ==> Starting build: 5.11.2-arch1-1
[2021-02-27T22:16:45+0100] [ALPM-SCRIPTLET]   -> Running build hook: [base]
[2021-02-27T22:16:45+0100] [ALPM-SCRIPTLET]   -> Running build hook: [udev]
[2021-02-27T22:16:45+0100] [ALPM-SCRIPTLET]   -> Running build hook: [autodetect]
[2021-02-27T22:16:45+0100] [ALPM-SCRIPTLET]   -> Running build hook: [modconf]
[2021-02-27T22:16:45+0100] [ALPM-SCRIPTLET]   -> Running build hook: [block]
[2021-02-27T22:16:46+0100] [ALPM-SCRIPTLET] ==> WARNING: Possibly missing firmware for module: xhci_pci
[2021-02-27T22:16:46+0100] [ALPM-SCRIPTLET]   -> Running build hook: [filesystems]
[2021-02-27T22:16:46+0100] [ALPM-SCRIPTLET]   -> Running build hook: [keyboard]
[2021-02-27T22:16:47+0100] [ALPM-SCRIPTLET]   -> Running build hook: [fsck]
[2021-02-27T22:16:50+0100] [ALPM-SCRIPTLET] ==> Generating module dependencies
[2021-02-27T22:16:50+0100] [ALPM-SCRIPTLET] ==> Creating zstd-compressed initcpio image: /boot/initramfs-linux.img
[2021-02-27T22:16:50+0100] [ALPM-SCRIPTLET] ==> Image generation successful
[2021-02-27T22:16:50+0100] [ALPM-SCRIPTLET] ==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'fallback'
[2021-02-27T22:16:50+0100] [ALPM-SCRIPTLET]   -> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-fallback.img -S autodetect
[2021-02-27T22:16:50+0100] [ALPM-SCRIPTLET] ==> Starting build: 5.11.2-arch1-1
[2021-02-27T22:16:50+0100] [ALPM-SCRIPTLET]   -> Running build hook: [base]
[2021-02-27T22:16:50+0100] [ALPM-SCRIPTLET]   -> Running build hook: [udev]
[2021-02-27T22:16:50+0100] [ALPM-SCRIPTLET]   -> Running build hook: [modconf]
[2021-02-27T22:16:50+0100] [ALPM-SCRIPTLET]   -> Running build hook: [block]
[2021-02-27T22:16:52+0100] [ALPM-SCRIPTLET] ==> WARNING: Possibly missing firmware for module: wd719x
[2021-02-27T22:16:52+0100] [ALPM-SCRIPTLET] ==> WARNING: Possibly missing firmware for module: aic94xx
[2021-02-27T22:16:53+0100] [ALPM-SCRIPTLET] ==> WARNING: Possibly missing firmware for module: xhci_pci
[2021-02-27T22:16:54+0100] [ALPM-SCRIPTLET]   -> Running build hook: [filesystems]
[2021-02-27T22:16:55+0100] [ALPM-SCRIPTLET]   -> Running build hook: [keyboard]
[2021-02-27T22:16:56+0100] [ALPM-SCRIPTLET]   -> Running build hook: [fsck]
[2021-02-27T22:16:57+0100] [ALPM-SCRIPTLET] ==> Generating module dependencies
[2021-02-27T22:16:58+0100] [ALPM-SCRIPTLET] ==> Creating zstd-compressed initcpio image: /boot/initramfs-linux-fallback.img
[2021-02-27T22:16:58+0100] [ALPM-SCRIPTLET] ==> Image generation successful
[2021-02-27T22:16:58+0100] [ALPM] running 'ghc-register.hook'...
[2021-02-27T22:16:59+0100] [ALPM] running 'gtk-update-icon-cache.hook'...
[2021-02-27T22:16:59+0100] [ALPM] running 'update-desktop-database.hook'...

I've tried downgrading to linux-5.11.1.arch1-1, linux-headers-5.11.1.arch1-1, linux-docs-5.11.1.arch1-1 and nvidia-460.56-1 (just in case), but not only did it not help (same snd_hda_intel error in dmesg output), but it also caused Xorg to crash with an undetected monitor error.

I quickly found this post, which led me to /etc/modprobe.d/alsa-base.conf:

$ cat /etc/modprobe.d/alsa-base.conf
options snd_mia index=1
options snd_hda_intel index=0

I've tried adding "options snd cards_limit=3" and/or switching the indices around, but none solved the issue.

sudo inxi -A reports:

Audio:     Device-1: Intel 200 Series PCH HD Audio driver: N/A
           Device-2: NVIDIA GP106 High Definition Audio driver: N/A
           Device-3: Logitech Webcam C270 type: USB driver: snd-usb-audio,uvcvideo
           Sound Server: ALSA v: k5.11.2-arch1-1

And so I've run out of options and ideas. Does anybody have a clue how to resolve this issue?

Last edited by Randoragon (2021-02-28 11:19:42)

Offline

#2 2021-02-28 10:59:19

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,743

Re: [SOLVED] ALSA fails to detect sound card after kernel update

That error happens because of your incomplete modprobe base conf (and can happen with every kernel on each boot depending on detection order, which is basically what you've apparently seen for months). if you want to work with indices here you have to account for all cards you actually are going to use so based on what we see here your alsa-base.conf should be

#There's a HDMI and a integrated card using snd_hda_intel so you have to account for both
options snd_hda_intel index=0,1
options snd_usb_audio index=2

or something so all the potential devices get their own index... If you don't care that much about the exact indices you can give "suggestions" with negative indices that will not lead to failure if that exact index is unavailable e.g.

options snd_hda_intel index=-1,-2
options snd_usb_audio=-3

that leads to the same logical mapping as before, so the integrated card lands on 0 the hdmi on 1 the usb on 2 but if for some reason you add another card that happens to land on one of these other indices, instead of outright failing to load the module because the allotted slot is not available it will just pick the next index.

Last edited by V1del (2021-02-28 11:06:44)

Offline

#3 2021-02-28 11:19:06

Randoragon
Member
Registered: 2021-02-28
Posts: 2

Re: [SOLVED] ALSA fails to detect sound card after kernel update

V1del wrote:

That error happens because of your incomplete modprobe base conf (and can happen with every kernel on each boot depending on detection order, which is basically what you've apparently seen for months). if you want to work with indices here you have to account for all cards you actually are going to use so based on what we see here your alsa-base.conf should be ...

Thank you, for some reason using explicit (non-negative) indices didn't work, but changing the contents to

options snd cards_limit=4
options snd_hda_intel index=-1,-2
options snd_mia index=-3
options snd_usb_audio=-4

resolved the issue (hopefully in the "right" way :) ).

Offline

#4 2021-02-28 11:22:14

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,743

Re: [SOLVED] ALSA fails to detect sound card after kernel update

Well another explanation would be if you use some loopback audio devices or so and aren't accounting for them, so yes going with negative indices should at least ensure they are loaded in "some" form even if the index they are "intending" to land on doesn't exist.

Offline

Board footer

Powered by FluxBB