Bug 191466 - RC_COLDPLUG=no breaks udev network naming rules
Bug#: 191466 Product:  Gentoo Linux Version: unspecified Platform: All
OS/Version: Linux Status: RESOLVED Severity: normal Priority: P2
Resolution: FIXED Assigned To: udev-bugs@gentoo.org Reported By: genone@gentoo.org
Component: Core system
URL: 
Summary: RC_COLDPLUG=no breaks udev network naming rules
Keywords:  
Status Whiteboard: 
Opened: 2007-09-06 06:59 0000
Description:   Opened: 2007-09-06 06:59 0000
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

------- Comment #1 From Roy Marples (RETIRED) 2007-09-06 10:15:29 0000 -------
(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.

------- Comment #2 From Matthias Schwarzott 2007-09-11 12:15:00 0000 -------
(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.

------- Comment #3 From Matthias Schwarzott 2007-09-11 13:43:47 0000 -------
Maybe we can add a call to
udevtrigger --subsystem-match=net
at udev-start.sh

------- Comment #4 From Matthias Schwarzott 2007-09-11 21:51:40 0000 -------
(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.

------- Comment #5 From Jakub Moc (RETIRED) 2007-10-11 09:47:44 0000 -------
(In reply to comment #4)
> This is implemented in udev-115-r3.

FIXED then.