Not sure if this is an issue in baselayout or udev, or maybe even the network drivers in the kernel: With RC_COLDPLUG=NO in /etc/conf.d/rc baslayout calls udevtrigger with --attr-match=dev. This causes udev to skip my rules for renaming the network interfaces as their sysfs entries don't have a "dev" attribute: $ ls -l /sys/class/net/lan0/dev* lrwxrwxrwx 1 root root 0 Sep 6 08:46 /sys/class/net/lan0/device -> ../../../../../devices/pci0000:00/0000:00:08.0 $ ls -l /sys/devices/pci0000:00/0000:00:08.0/dev* -r--r--r-- 1 root root 4096 Sep 6 08:46 /sys/devices/pci0000:00/0000:00:08.0/device This obviously breaks the network init scripts later in the boot process. $ smerge --info Portage 7692-svn (default-linux/amd64/2007.0/no-multilib, gcc-4.1.2, glibc-2.6.1-r0, 2.6.22-gentoo-r2 x86_64) ================================================================= System uname: 2.6.22-gentoo-r2 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 4600+ Timestamp of tree: Thu, 06 Sep 2007 02:30:01 +0000 app-shells/bash: 3.2_p25-r1 dev-java/java-config: 1.3.7, 2.0.33-r1 dev-lang/python: 2.4.4-r4, 2.5.1-r2 dev-python/pycrypto: 2.0.1-r6 sys-apps/baselayout: 1.12.10-r4 sys-apps/sandbox: 1.2.18.1 sys-devel/autoconf: 2.13, 2.61-r1 sys-devel/automake: 1.4_p6, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10 sys-devel/binutils: 2.18 sys-devel/gcc-config: 1.4.0-r2 sys-devel/libtool: 1.5.24 virtual/os-headers: 2.6.22-r2 ACCEPT_KEYWORDS="amd64 ~amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe -ftracer -fweb -frename-registers -march=athlon64" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/X11/xkb" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/revdep-rebuild /etc/terminfo" CXXFLAGS="-O2 -pipe -ftracer -fweb -frename-registers -march=athlon64" DISTDIR="/srv/portage/distfiles" FEATURES="collision-protect distlocks metadata-transfer preserve-libs sandbox sfperms sign strict unmerge-orphans userfetch userpriv usersandbox" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LINGUAS="en en_US en_GB de de_DE" MAKEOPTS="-s -j4 -l3.0" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/srv/portage/porttree" PORTDIR_OVERLAY="/srv/portage/testing /srv/portage/overlay" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="3dnow 3dnowext X a52 aac acl alsa amd64 bash-completion berkdb bitmap-fonts bzip2 cairo caps cdr chroot cli cracklib crypt cups d dri dvd dvdnav dvdr dvdread encode exif fbcon gcj gdbm gif glitz gpm gtk iconv imap ipv6 isdnlog jpeg jpeg2k ldap mad midi mmx mp2 mp3 mudflap ncurses nfs nptl nptlonly ogg opengl openmp pam pcre pdf png pppd python quicktime readline reflection rtc samba sdl session smp spl sse sse2 ssl svg tiff truetype truetype-fonts type1-fonts unicode v4l v4l2 vorbis xattr xcb xcomposite xface xml xorg xv xvid xvmc zlib" ALSA_CARDS="hda-intel intel8x0 bt87x" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US en_GB de de_DE" USERLAND="GNU" VIDEO_CARDS="nv nvidia vga vesa fbdev v4l" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
(In reply to comment #0) > With RC_COLDPLUG=NO in /etc/conf.d/rc baslayout calls udevtrigger with > --attr-match=dev. baselayout makes no such call - we just start udev.
(In reply to comment #1) > (In reply to comment #0) > > With RC_COLDPLUG=NO in /etc/conf.d/rc baslayout calls udevtrigger with > > --attr-match=dev. > > baselayout makes no such call - we just start udev. > sure udev-start.sh does the udevtrigger call. Maybe we need to start up udevtrigger more than once to match all stuff that is not coldplug. Or redesign coldplug setting for udev completely.
Maybe we can add a call to udevtrigger --subsystem-match=net at udev-start.sh
(In reply to comment #3) > Maybe we can add a call to > udevtrigger --subsystem-match=net > at udev-start.sh > This is implemented in udev-115-r3.
(In reply to comment #4) > This is implemented in udev-115-r3. FIXED then.