CONTEXT : These are the relevant e-builds version : - sys-apps/hotplug-20040923-r2 - sys-apps/coldplug-20040920 `emerge --info' says : Portage 2.0.54 (default-linux/x86/2005.1, gcc-3.3.5-20050130, glibc-2.3.4.20041102-r1, 2.6.16-gentoo-r3 i686) (etc...) BUG : (./ is /etc/hotplug/) The call stack is (, <file>:<line number>:<line extract>) : - ./pci.agent:141:load_drivers - ./hotplug.functions:113:pci_map_modules - ./pci.agent:123:break The "break" statement disables loading more than one driver for one PCI device. (./ is /lib/modules/2.6.16-gentoo-r3/) However, there can be more than one driver listed in ./modules.pcimap for one particular device and the one listed first is not always the right one. EXAMPLE : On a Toshiba L20 laptop, `lspci' says : (...) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d4) (...) 06:02.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10) (etc...) and `egrep "(^#)|0x000010ec 0x00008139 0xffffffff" ./modules.pcimap' says : # pci module vendor device subvendor subdevice class class_mask driver_data 8139cp 0x000010ec 0x00008139 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0 8139too 0x000010ec 0x00008139 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0 (./ is /sys/devices/pci0000:00/0000:00:1e.0/0000:06:02.0/) This means 2 modules, 8139cp AND 8139too for the ethernet card. However, in this case, 8139cp does not work and 8139too does. When I `modprobe 8139cp', I see nothing added in /sys/class/net/ and `/etc/init.d/net.eth0 start' fails because "eth0 does not exist" but when I `modprobe 8139too' it works as `ls -l ./{driver,net*}' shows : ./driver -> ../../../../bus/pci/drivers/8139too ./net:eth0 -> ../../../../class/net/eth0 SOLUTION : Commenting out the "break" statement l.123 in /etc/hotplug/pci.agent (one may also change "one" by "all" l.78,86) enabled be to send this bug report from a Toshiba L20 laptop. If you google for "eth0 does not exist", you will see that the issue is fairly common.
Are you also using udev? If so, can you try the 090 release? That should solve this issue, as it does the module loading now (in a way, it really just lets 'modprobe' do it) and the hotplug scripts do not handle it anymore, as they are being phased out.
> Are you also using udev? Yes > If so, can you try the 090 release? I did : emerge -C sys-apps/coldplug emerge =sys-fs/udev-090 etc-update rc-update del coldplug and I can still send replies to bug comments with my laptop :-)
So this works now?
yes