Bruce Dubbs wrote: > Inside chroot, I do have: > $ ls -l /sys/class/net/eth0/ > > device -> ../../../devices/pci0000:00/0000:00:1c.0/0000:02:00.0 > > but of course I don't have lspci in chroot yet.
On kernel 3.2.3 (I need to try 3.4, but haven't yet), /sys/class/net/eth0 itself is a symlink, into the /sys/devices/pciX tree for the bus that the card is on. Is yours a symlink, or a separate directory? If it's a separate directory, then I suspect that's the problem: udev doesn't handle that old of a sysfs layout anymore IIRC. (Upstream, for the record, says that newer kernels will work with older udev versions, but not the other way around. Makes a large upgrade easy, right? :-/ ) The tree looks something like this in 3.2.3: /sys/ +->class/ | +->net/ | +->eth0 -> ../../devices/pci0000:00/0000:00:06.0/0000:05:05.0/net/eth0/ +->devices/pci0000:00/0000:00:06.0 +->0000:05:05.0/ +->vendor,device,etc. +->subsystem -> ../../../../bus/pci +->driver -> ../../../../bus/pci/drivers/e1000 +->net/ +->eth0/ +->address,ifindex,ifalias,mtu,speed,etc. +->device -> ../../../0000:05:05.0 +->subsystem -> ../../../../../../class/net So since eth0 itself is a link to the net subsystem entry physically stored under the pci subsystem entry, udev finds the vendor/device from the parent, instead of having to traverse symlinks. I don't remember which kernel this showed up in for sure, though. Might have to do with CONFIG_SYSFS_DEPRECATED? Of course unsetting that might break your earlier version of udev, if it's set now. :-/
signature.asc
Description: OpenPGP digital signature
-- http://linuxfromscratch.org/mailman/listinfo/lfs-dev FAQ: http://www.linuxfromscratch.org/faq/ Unsubscribe: See the above information page