Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 403493 - sys-fs/udev-171-r5 - problem running /usr/sbin/alsactl when /usr is not mounted
Summary: sys-fs/udev-171-r5 - problem running /usr/sbin/alsactl when /usr is not mounted
Status: RESOLVED DUPLICATE of bug 364235
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: x86 Linux
: Normal normal (vote)
Assignee: Gentoo ALSA team
: 405801 (view as bug list)
Depends on:
Reported: 2012-02-13 22:50 UTC by vyperin
Modified: 2013-10-06 15:34 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Note You need to log in before you can comment on or make changes to this bug.
Description vyperin 2012-02-13 22:50:50 UTC
After upgrading to sys-fs/udev-171-r5 , the following issue appeared at boot time:

udev[5823]: failed to execute '/usr/sbin/alsactl' '/usr/sbin/alsactl restore 0': No such file or directory

/usr/sbin/alsactl is present on system.


Running manually "/usr/sbin/alsactl restore 0" from bash yields:

/usr/sbin/alsactl: load_state:1586: Cannot open /var/lib/alsa/asound.state for reading: No such file or directory
Found hardware: "EMU10K1" "SigmaTel STAC9708,11" "AC97a:83847608" "0x1102" "0x8064"
Hardware is initialized using a generic method

/var/lib/alsa/asound.state is not present on system.


As I have read searching for a similar error as mine - it might be a problem with /usr/sbin directory not being mounted at the time of the execution.


On an amd64 VirtualBox Gentoo guest, also upgraded to sys-fs/udev-171-r5 and same thing happens to "/usr/sbin/alsactl restore 0". Other than this, on this VM, there is another error similar to this:

udev[5796]: failed to execute '/usr/bin/vmmouse_detect' '/usr/bin/vmmouse_detect': No such file or directory

/usr/bin/vmmouse_detect is present on the respective system.

Reproducible: Always

Steps to Reproduce:
1. emerge -uDN world
2. reboot
Actual Results:  
No more sound due to failure of '/usr/sbin/alsactl restore 0' command.

Expected Results:  
/usr/sbin/alsactl should run at boot time.

Installed versions:  171-r5(06:40:07 13.02.2012)(acl edd extras floppy gudev hwdb introspection keymap rule_generator -action_modeswitch -build -debug -selinux -test)

Portage (default/linux/x86/10.0, gcc-4.5.3, glibc-2.13-r4, 2.6.38-gentoo-r6-vyper-v1 i686)
System uname: Linux-2.6.38-gentoo-r6-vyper-v1-i686-AMD_Athlon-tm-_3200+-with-gentoo-2.0.3
Timestamp of tree: Mon, 13 Feb 2012 00:15:01 +0000
ccache version 3.1.6 [enabled]
app-shells/bash:          4.1_p9
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.7.2-r3, 3.1.4-r3
dev-util/ccache:          3.1.6
dev-util/cmake:           2.8.6-r4
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.0.3
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.68
sys-devel/automake:       1.10.3, 1.11.1
sys-devel/binutils:       2.21.1-r1
sys-devel/gcc:            4.4.5, 4.5.3-r1
sys-devel/gcc-config:     1.4.1-r1
sys-devel/libtool:        2.4-r1
sys-devel/make:           3.82-r1
sys-kernel/linux-headers: 3.1 (virtual/os-headers)
sys-libs/glibc:           2.13-r4
Repositories: gentoo x-portage
CFLAGS="-O2 -march=native -pipe"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /var/bind /var/spool/torque"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=native -pipe"
FEATURES="assume-digests binpkg-logs candy ccache clean-logs compress-build-logs distlocks ebuild-locks fixlafiles force-prefix news parallel-fetch parallel-install protect-owned sandbox sfperms split-elog split-log strict unknown-features-filter unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en ro"
MAKEOPTS="-j2 -l=77"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
USE="3dnow X Xaw3d a52 aac aalib accessibility acl acpi alsa avahi bash-completion bcmath berkdb branding bzip2 cairo calendar caps cdda cddb cdparanoia cgi clamav cli cracklib crypt css ctype curl curlwrappers cvs cxx dbus dga directfb djvu doc dts dv dvd encode examples exif expat fam fastcgi fbcon ffmpeg flac flatfile fontconfig ftp gd gdbm geoip ggi gif gmp gnuplot gnutls gpm graphviz gsm gstreamer gtk guile handbook iconv icu idn imagemagick imap imlib inifile iodbc ipv6 java java6 jbig jpeg jpeg2k kontact ladspa lame latex lcms ldap libcaca libnotify libsamplerate lm_sensors lua lzma lzo mad maildir matroska mbox mhash mmap mmx mng modplug mono motif mp3 mp4 mpeg mpi mplayer mtp musepack mysql mysqli nas ncurses netboot nis nls nptl nsplugin odbc ogg openal openexr opengl openmp pam pcntl pcre pdf perl php png policykit posix profile python qt4 quicktime radius raw readline recode rss ruby samba sasl sdl semantic-desktop session sharedext simplexml skey slang slp sndfile snmp soap sockets socks5 speex spell spl sqlite sqlite3 sse ssl startup-notification subversion suid svg svga syslog sysvipc taglib tcl tcpd theora threads tidy tiff tk tokenizer truetype udev unicode usb vcd vhosts vorbis wavpack wddx win32codecs wmf x264 x86 xattr xcb xcomposite xft xine xinerama xml xmlrpc xosd xpm xscreensaver xsl xulrunner xv xvid zeroconf zlib zsh-completion" ALSA_PCM_PLUGINS="*" ELIBC="glibc" INPUT_DEVICES="evdev" KERNEL="linux" LINGUAS="en ro" USERLAND="GNU" VIDEO_CARDS="nvidia"
Comment 1 Rafał Mużyło 2012-02-14 00:32:51 UTC
Is /usr a separate partition from / ?
Comment 2 Rafał Mużyło 2012-02-14 01:54:07 UTC
Never mind, I noticed the relevant part:
> it might be a problem
> with /usr/sbin directory not being mounted at the time of the execution

that's indeed a problem cause udev pretty much assumes /usr is already mounted.

See the thread on gentoo-dev - most likely you'll need an initramfs.
Comment 3 vyperin 2012-02-14 13:02:52 UTC
/usr is an ext4 partition, using lvm2, on a volume group spanning on top of a raid 0 partition created with an array of 2 disks - mount output:

/dev/mapper/vg-usr on /usr type ext4 (rw)


The kernel is generated with genkernel, and does have an intramfs - grub.conf setting:

title Gentoo Linux 2.6.38-r6-vyper-v1
root (hd0,0)
kernel /boot/kernel-genkernel-x86-2.6.38-gentoo-r6-vyper-v1 dolvm real_root=/dev/md3 vga=0x31A splash=verbose,theme:natural_gentoo console=tty1
initrd /boot/initramfs-genkernel-x86-2.6.38-gentoo-r6-vyper-v1


I am waiting for the 3.2.1 ~x86 stabilization for the next kernel update on the machine (the VM with the same issue is running a 3.2.1 kernel, also with intramfs, because 3.2.1 is stable for amd64).

I build all my kernels with genkernel (because less time and knowledge is required ...). I have seen lately that i can include intramfs right into the kernel - is this the new way to do it ?


I presume from your comment that this might be an OpenRC issue, regarding the order of service execution - but who was first ? - the egg or the hen ? - does udev need all filesystem mounted or vice-versa - the filesystem needs udev so it can be mounted ?

Comment 4 Rafał Mużyło 2012-02-14 22:32:49 UTC
The thread in question starts here: (indeed, this mail archive interface is quite lacking).

I meant "you need an initramfs that mounts /usr" - I'm not sure one generated by genkernel does that.

Recent udev changes gone in a direction of treating not mounted /usr as a sysadmin failure.

(on a semi-related note: I've always considered as a problem,not a solution)
Comment 5 Fab 2012-02-18 09:23:29 UTC
Duplicate of bug #384375 ? Seems fixed by last alsa-utils in the tree :

> 03 Feb 2012; Tony Vroon <> +alsa-utils-1.0.25.ebuild,
>  +files/alsa-utils-1.0.25-separate-usr-var-fs.patch:
> [...]
>  Patch by Martin van Gagern silences warnings when using a separate /usr
>  or /var partition, closes bug #384375.
Comment 6 Rafał Mużyło 2012-02-26 16:13:24 UTC
*** Bug 405801 has been marked as a duplicate of this bug. ***
Comment 7 Oleg 2012-03-17 14:45:37 UTC
Did anybody try to move /usr/sbin/alsactl to /sbin/alsactl?
Comment 8 cyberbat 2012-03-17 21:11:50 UTC
(In reply to comment #7)
> Did anybody try to move /usr/sbin/alsactl to /sbin/alsactl?

I think it will not make problem go away because of
ldd /usr/sbin/alsactl | grep usr => /usr/lib64/ (0x00007f5355278000)
Comment 9 Oleg 2012-03-17 23:22:14 UTC
(In reply to comment #8)
> (In reply to comment #7)
> > Did anybody try to move /usr/sbin/alsactl to /sbin/alsactl?
> I think it will not make problem go away because of
> ldd /usr/sbin/alsactl | grep usr
> => /usr/lib64/ (0x00007f5355278000)

> /usr/lib64/

It can be fixed also.
Comment 10 Rafał Mużyło 2012-03-18 11:53:38 UTC
@comment 9: the thing is it *won't* be fixed. Just read the thread I mentioned: there's a lot of bikeshedding there, but in the end it make it quite clear, that unless somebody *successfully* forks udev, /usr *must* be mounted by the time udevd gets run.
Comment 11 Alexander E. Patrakov 2012-03-19 05:36:29 UTC
Is the problem really limited to /usr? Does genkernel or drakut also mount /var? I am asking because alsactl also reads /var/lib/alsa/asound.state, and thus, by the same logic, /var must be mounted.
Comment 12 Samuli Suominen (RETIRED) gentoo-dev 2012-03-21 00:17:54 UTC

*** This bug has been marked as a duplicate of bug 364235 ***