Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#15173 closed enhancement (fixed)

alsa-lib alsa-utils 1.2.5.1

Reported by: Douglas R. Reno Owned by: Douglas R. Reno
Priority: normal Milestone: 11.0
Component: BOOK Version: git
Severity: normal Keywords:
Cc:

Description

Over in #lfs-support on IRC, a user has reported that, after updating to alsa-lib-1.2.5, HDMI Audio no longer works on his system. The user linked to this patch:

https://github.com/alsa-project/alsa-lib/commit/ddfc32abf5697de1618b9e7ffdf57a0f97013090

However, Arch has more patches, including ones for compatibility with Pipewire+Plasma, so we should apply those as well:

https://github.com/alsa-project/alsa-lib/commit/0e4ba2ea8c0402f12a645032a14693eb9b1278e6

https://github.com/alsa-project/alsa-lib/commit/9621d0bff2e60b43e329ffa5059ab19f2914ec14

alsactl in alsa-utils is also known to segfault, as I just reproduced after I rebooted. Patches here:

https://github.com/alsa-project/alsa-utils/commit/78212445de4c8e07873cbc7dff2abcacd031f151

https://github.com/alsa-project/alsa-utils/commit/f138117a457944ca73776bd752693d64ec207e55

https://github.com/alsa-project/alsa-utils/commit/6018c2014ac24877b2aa58c2c57f2fd901e6c7b1

Change History (9)

comment:1 by Douglas R. Reno, 3 years ago

Here is my crash:

Jun 06 19:32:23 POOH systemd-coredump[351]: [🡕] Process 297 (alsactl) of user 0 dumped core.
░░ Subject: Process 297 (alsactl) dumped core
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ Documentation: man:core(5)
░░ 
░░ Process 297 (alsactl) crashed and dumped core.
░░ 
░░ This usually indicates a programming error in the crashing program and
░░ should be reported to its vendor as a bug.
Jun 06 19:32:23 POOH kernel: systemd-coredum (351) used greatest stack depth: 12768 bytes left
Jun 06 19:32:23 POOH systemd-udevd[284]: controlC0: Process '/usr/sbin/alsactl restore 0' terminated by signal ABRT.
Jun 06 19:32:23 POOH systemd-udevd[284]: controlC0: Failed to wait for spawned command '/usr/sbin/alsactl restore 0': Input/output error
Jun 06 19:32:23 POOH systemd-udevd[284]: controlC0: Failed to execute '/usr/sbin/alsactl restore 0', ignoring: Input/output error

comment:2 by Bruce Dubbs, 3 years ago

This seems pretty serious.

I wonder how long it will take for upstream to release new versions of alsa-{lib,utils}.

comment:3 by Douglas R. Reno, 3 years ago

I'm not sure, Arch and Gentoo both issued patches as recently as 3 days ago after upstream said that they were having problems with their repositories. On most bug reports filed about this (issues such as microphones entirely vanishing), they just point to the commit in "master" and tell people to apply it manually.

comment:4 by Douglas R. Reno, 3 years ago

Owner: changed from blfs-book to Douglas R. Reno
Status: newassigned

comment:5 by Douglas R. Reno, 3 years ago

Summary: Fix alsa-lib and alsa-utils to work with HDMI Audio againalsa-lib alsa-utils 1.2.5.1
Type: defectenhancement

Upstream has released new versions finally - alsa-lib-1.2.5.1 and alsa-utils-1.2.5.1. Changing the ticket title, but I'll leave all the details here intact.

comment:6 by Douglas R. Reno, 3 years ago

alsa-lib

alsa-lib
Core

    Release v1.2.5.1
    Fix EXPORT_SYMBOL attribute for clang
    configure: check if eaccess() is available

Control API

    control: remap - fix an infinite recursive call in the async callback
    control: remap - fix uninitialized value in parse_map_vindex()

PCM API

    pcm: direct - remove dead code
    pcm: softvol - fix early exit in add_tlv_info()
    pcm: remove extra NULL checks in snd_pcm_dshare_open()
    pcm: remove extra NULL checks in snd_pcm_dsnoop_open()
    pcm: remove extra NULL checks in snd_pcm_dmix_open()
    pcm: direct - fix pcmp error path in _snd_pcm_direct_new()

Timer API

    timer: remove dead code in _snd_timer_hw_open()

Use Case Manager API

    configure: check if eaccess() is available
    ucm: include sys/wait.h to fix build on Android
    ucm_exec.c: Include limits.h explicitly to fix build on musl
    ucm: compound_merge() - fix use after free (and logic)
    ucm: fix possible memory leak in parse_verb_file()
    ucm: fix out-of-array access in rval_device_lookup_init()
    ucm: check error value in parse_lookup_query()
    ucm: fix possible NULL pointer dereference in uc_mgr_exec()
    ucm: find_exec() - fix memory leak (dir)
    ucm: fix if_eval_path() - access NULL pointer
    ucm: fix use after free in if_eval_regex_match()
    ucm: fix error path in execute_cfgsave()
    ucm: fix _alibpref string (add '.' delimiter to the end)
    ucm: add _alibpref to get the private device prefix

Configuration

    conf: snd_config_get_card() remove unused assignment
    conf: remove dead code in snd_config_get_card()
    conf: fix load_for_all_cards() 

comment:7 by Douglas R. Reno, 3 years ago

alsa-utils

alsa-utils
Core

    Release v1.2.5.1

ALSA Control (alsactl)

    utils.c: Include limits.h explicitly to fix build on musl
    alsactl: load_state: Only delete config if one was loaded
    alsactl: load_state() - initialize config variable for the open_failed case
    alsactl: fix lock_fd unlock in load_configuration() - error path
    alsactl: state - fix ‘item’ may be used uninitialized gcc warning
    alsactl: check for error values from snd_config_get...()
    alsactl: init() - return error value from snd_card_iterator_sinit() call
    alsactl: return error value in dump_config_tree()
    alsactl: fix the nested iteration

Audio Transfer utility

    axfer: fix wrong calloc() item size in allocate_containers()

alsatplg (topology)

    topology: fix few coverity detected defects
    topology: fix potential null pointer from strchr

aplay/arecord

    arecord: Inform users when 8-bit sampling is used on tty
    Revert "aplay: try to use 16-bit format to increase capture quality"

aseqnet

    added an option to aseqnet to optionally set the midi process name 

comment:8 by Douglas R. Reno, 3 years ago

Resolution: fixed
Status: assignedclosed

comment:9 by Bruce Dubbs, 3 years ago

Milestone: 10.211.0

Milestone renamed

Note: See TracTickets for help on using tickets.