1

Yesterday's behavior: Sound works fine from built-in speakers and from headphones. At one point, I launch a Windows VM and a screensharing Zoom call at the same time; it is too much for my laptop and it crashes.

Today's behavior: I turn on my laptop and cannot hear any sound, either from the built-in speakers or from headphones. If I run pavucontrol, I see the output level monitor go up and down if I play an audio file, but can't hear anything. This does not change if I mute/unmute, change volume levels, change the 'profile', etc. System sound settings show 'Speakers' and 'Headphones' as possible outputs.

System details:

$ lspci -v
[...]
00:1f.3 Audio device: Intel Corporation Sunrise Point-LP HD Audio (rev 21) (prog-if 80)
    Subsystem: Dell Sunrise Point-LP HD Audio
    Flags: bus master, fast devsel, latency 32, IRQ 140
    Memory at d1128000 (64-bit, non-prefetchable) [size=16K]
    Memory at d1100000 (64-bit, non-prefetchable) [size=64K]
    Capabilities: <access denied>
    Kernel driver in use: snd_hda_intel
    Kernel modules: snd_hda_intel, snd_soc_skl
[...]

$ echo list-sinks | pacmd
1 sink(s) available.
  * index: 0
    name: <alsa_output.pci-0000_00_1f.3.analog-stereo>
    driver: <module-alsa-card.c>
    flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
    state: SUSPENDED
    suspend cause: IDLE
    priority: 9039
    volume: front-left: 58980 /  90% / -2.75 dB,   front-right: 58980 /  90% / -2.75 dB
            balance 0.00
    base volume: 65536 / 100% / 0.00 dB
    volume steps: 65537
    muted: no
    current latency: 0.00 ms
    max request: 0 KiB
    max rewind: 0 KiB
    monitor source: 0
    sample spec: s16le 2ch 48000Hz
    channel map: front-left,front-right
                 Stereo
    used by: 0
    linked by: 0
    configured latency: 0.00 ms; range is 0.50 .. 341.33 ms
    card: 0 <alsa_card.pci-0000_00_1f.3>
    module: 7
    properties:
        alsa.resolution_bits = "16"
        device.api = "alsa"
        device.class = "sound"
        alsa.class = "generic"
        alsa.subclass = "generic-mix"
        alsa.name = "ALC3253 Analog"
        alsa.id = "ALC3253 Analog"
        alsa.subdevice = "0"
        alsa.subdevice_name = "subdevice #0"
        alsa.device = "0"
        alsa.card = "0"
        alsa.card_name = "HDA Intel PCH"
        alsa.long_card_name = "HDA Intel PCH at 0xd1128000 irq 140"
        alsa.driver_name = "snd_hda_intel"
        device.bus_path = "pci-0000:00:1f.3"
        sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sound/card0"
        device.bus = "pci"
        device.vendor.id = "8086"
        device.vendor.name = "Intel Corporation"
        device.product.id = "9d71"
        device.product.name = "Sunrise Point-LP HD Audio"
        device.form_factor = "internal"
        device.string = "front:0"
        device.buffering.buffer_size = "65536"
        device.buffering.fragment_size = "32768"
        device.access_mode = "mmap+timer"
        device.profile.name = "analog-stereo"
        device.profile.description = "Analog Stereo"
        device.description = "Built-in Audio Analog Stereo"
        alsa.mixer_name = "Realtek ALC3253"
        alsa.components = "HDA:10ec0225,10280740,00100002"
        module-udev-detect.discovered = "1"
        device.icon_name = "audio-card-pci"
    ports:
        analog-output-speaker: Speakers (priority 10000, latency offset 0 usec, available: unknown)
            properties:
                device.icon_name = "audio-speakers"
        analog-output-headphones: Headphones (priority 9000, latency offset 0 usec, available: no)
            properties:
                device.icon_name = "audio-headphones"
    active port: <analog-output-speaker>

$ lsmod | grep snd
snd_soc_skl            86016  0
snd_soc_skl_ipc        65536  1 snd_soc_skl
snd_hda_ext_core       24576  1 snd_soc_skl
snd_soc_sst_dsp        32768  1 snd_soc_skl_ipc
snd_soc_sst_ipc        16384  1 snd_soc_skl_ipc
snd_soc_acpi           16384  1 snd_soc_skl
snd_soc_core          241664  1 snd_soc_skl
snd_compress           20480  1 snd_soc_core
snd_hda_codec_realtek   106496  1
ac97_bus               16384  1 snd_soc_core
snd_pcm_dmaengine      16384  1 snd_soc_core
snd_hda_codec_generic    73728  1 snd_hda_codec_realtek
snd_hda_intel          45056  6
snd_hda_codec         126976  3 snd_hda_codec_generic,snd_hda_intel,snd_hda_codec_realtek
snd_hda_core           81920  6 snd_hda_codec_generic,snd_hda_intel,snd_hda_ext_core,snd_hda_codec,snd_hda_codec_realtek,snd_soc_skl
snd_hwdep              20480  1 snd_hda_codec
snd_pcm                98304  7 snd_hda_intel,snd_hda_ext_core,snd_hda_codec,snd_soc_core,snd_soc_skl,snd_hda_core,snd_pcm_dmaengine
snd_seq_midi           16384  0
snd_seq_midi_event     16384  1 snd_seq_midi
snd_rawmidi            32768  1 snd_seq_midi
snd_seq                65536  2 snd_seq_midi,snd_seq_midi_event
snd_seq_device         16384  3 snd_seq,snd_seq_midi,snd_rawmidi
snd_timer              32768  2 snd_seq,snd_pcm
snd                    81920  24 snd_hda_codec_generic,snd_seq,snd_seq_device,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_compress,snd_soc_core,snd_pcm,snd_rawmidi
soundcore              16384  1 snd

$ sudo fuser -v /dev/snd/*
                     USER        PID ACCESS COMMAND
/dev/snd/controlC0:  gdm        1967 F.... pulseaudio
                     shardul    4099 F.... pulseaudio

$ uname -a
Linux shardul-laptop 4.15.0-101-generic #102-Ubuntu SMP Mon May 11 10:07:26 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

Searching for output from Pulseaudio and ALSA in /var/log/syslog or dmesg does not show any errors, except only occasionally,

[alsa-sink-ALC3253 Analog] alsa-sink.c: Error opening PCM device front:0: Device or resource busy
[pulseaudio] sink-input.c: Failed to create sink input: sink is suspended.

I tried to manually unsuspend the sink with pacmd but that didn't change anything. I have also tried:

  • reinstalling pulseaudio, alsa-base, and linux-sound-system
  • uninstalling alsa-base altogether
  • adding myself to the audio group
  • bunch of pulseaudio kills and restarts, alsa reloads
  • rebooting a bunch of times throughout the debugging process

How can I get my audio to work again? Thanks for your attention.

shardulc
  • 121

2 Answers2

1

Turns out this was due to a recent kernel upgrade, from 4.15.0-96 to 4.15.0-101. I did not immediately see the problem because the new kernel would have been used only after a reboot, which I had to do due to the crash described in my question. This is the relevant kernel bug although my laptop is an Inspiron 5378 instead of 5368. I was able to solve the issue by:

  1. sudo apt-get purge pulseaudio alsa-base
  2. Reboot, choosing the older kernel version at boot time
  3. sudo apt-get install pulseaudio alsa-base
  4. Reboot, again choosing the older kernel

Not sure that this will be sufficient to fix it for others because I reinstalled, deleted config, played around with settings, etc. a whole bunch before discovering this.

shardulc
  • 121
0

The latest release of this (kernel.zip) fixed it for me. All credit to Heikomat for an excellent solution.

Pablo Bianchi
  • 15,657