← Back to team overview

aims team mailing list archive

[Bug 1289730] Re: systemd-udev fails to execute alsactl during start-up if /usr and/or /var are separate volumes

 

So I think the right way to go here is to modify /lib/udev/rules.d/90
-alsa-restore.rules and add a check of /usr/share/alsa and
/var/run/alsa, so the entire file ends up like this (first line changed)
:

-----
ACTION=="add", SUBSYSTEM=="sound", KERNEL=="controlC*", KERNELS!="card*", TEST=="/usr/share/alsa", TEST=="/var/run/alsa", GOTO="alsa_restore_go"
GOTO="alsa_restore_end"

LABEL="alsa_restore_go"
TEST!="/var/lib/alsa/state-daemon.conf", RUN+="/usr/sbin/alsactl -E HOME=/var/run/alsa restore $attr{device/number}"
TEST=="/var/lib/alsa/state-daemon.conf", RUN+="/usr/sbin/alsactl -E HOME=/var/run/alsa nrestore $attr{device/number}"

LABEL="alsa_restore_end"
-----

...because this udev rule is meant for hotplugging. In case this udev
rule gets to run before /usr or /var is mounted, alsactl restore will
instead be run for these cards later on, in /etc/init/alsa-restore.conf
or /lib/systemd/system/basic.target.wants/alsa-restore.service.

Does that make sense?

-- 
You received this bug notification because you are a member of AIMS,
which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1289730

Title:
  systemd-udev fails to execute alsactl during start-up if /usr and/or
  /var are separate volumes

Status in “alsa-utils” package in Ubuntu:
  Incomplete

Bug description:
  During system startup systemd-udev will print the following error
  messages:

  [   15.089778] systemd-udevd[683]: failed to execute '/usr/sbin/alsactl' '/usr/sbin/alsactl -E HOME=/var/run/alsa restore 0': No such file or directory
  [   15.090130] systemd-udevd[684]: failed to execute '/usr/sbin/alsactl' '/usr/sbin/alsactl -E HOME=/var/run/alsa restore 1': No such file or directory

  alsactl is present:

  $ which alsactl
  /usr/sbin/alsactl

  but on a separate partition:
  $ df -h /usr/sbin/alsactl 
  Dateisystem            Größe Benutzt Verf. Verw% Eingehängt auf
  /dev/mapper/scaleo-usr   12G    6,6G  4,1G   62% /usr

  $ df -h /var
  Dateisystem            Größe Benutzt Verf. Verw% Eingehängt auf
  /dev/mapper/scaleo-var  7,3G    2,5G  4,4G   37% /var

  This suggests that systemd-udev is called before all local partitions
  have been mounted.

  $ lsb_release -rd
  Description:	Ubuntu Trusty Tahr (development branch)
  Release:	14.04

  $ apt-cache policy udev
  udev:
    Installiert:           204-5ubuntu13
    Installationskandidat: 204-5ubuntu13
    Versionstabelle:
   *** 204-5ubuntu13 0
          500 http://de.archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
          100 /var/lib/dpkg/status

  Kind regards,
    Dominik

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/alsa-utils/+bug/1289730/+subscriptions