Bug ID 972315
Summary Yast2-sound does not properly load kernel modules when clicking 'Ok'
Classification openSUSE
Product openSUSE Distribution
Version Leap 42.1
Hardware Other
OS Other
Status NEW
Severity Normal
Priority P5 - None
Component YaST2
Assignee yast2-maintainers@suse.de
Reporter ch.ehrlicher@gmx.de
QA Contact jsrain@suse.com
Found By ---
Blocker ---

When configuring a sound card with Yast2, all works fine. The test sound can be
played etc.
But when finishing the configuration with a click on 'Ok', Yast2 unloads the
sound kernel modules (which is fine) and tries to reload them with the help of
the 'alsadrivers' script (from package yast2-sound).
The offending line is in the get_drivers() function:

get_drivers() {
  /sbin/modprobe -c | \
    grep -E "^[[:space:]]*alias[[:space:]]+snd-card-[[:digit:]]" | sort -u | \
    while read a b card; do
        echo $card
    done
}

It looks like modprobe changed it's output a little bit. With openSUSE 13.2 and
Leap 42.1, 'modprobe -c' converts all '-' to '_'. This can be easily tested by
simply adding a new alias to /etc/modprobe.d/99-local.conf:
alias test-chris chris

-> 'modprobe -c | grep chris' results in 'alias test_chris chris'

Therefore '+snd-card-' needs be changed to '+snd_card_' in the grep statement.
Doing the same with a very old openSUSE version (11.3 in this case) results in
'alias test-chris chris'. Don't know when the output 'modprobe -c' was changed
... but somewhere inbetween 11.3 and 13.2 :)

This also affects SLE12 / SLE12 SP1

btw:
This may be related to bug #954824


You are receiving this mail because: