Hi, I have a problem identifying PCI devices (NICs in this case) on some hardware. In case the questions I have are too stupid please just ignore this email. While I usually use the bus:device.function to identify the hardware this is not possible on some hardware, because the bus numbers are changing. And this is all because the box has 4 slots, and each slot can possibly hold one of 3 different types of modules, differing in the number of NICs they hold. I found out that this is a well known problem, which is due to the fact that the different modules have a different number of PCI bridges on them. In my case from 2 to 7 PCI bridges per module. And then I came across the Chassis Capability (id 04). On first read this sounded as it would solve the problem, making the ID unique again if configured properly, irrespective of the actual slot module used. Has anyone experience with the Chassis Capability? In my understanding the Chassis Capability is transparent to the OS, the devices can still be identified by bus:device.function, correct? According to the lspci source it should show something like: Capabilities: [04] Slot ID: 8 slots, First1, chassis 42 I was unable to find some sample lspci output when googling, a sample output would be helpfull as well. What I found helpfull, without the Chassis Capability, was a small tool I wrote (derived from pciutils/examle.c), which is able to identify the devices with a "path walk" from the PCI Root Port to the actual device. So e. g. when specifying: ./example -s '/00:02.0/:05.0/:01.1/:05.1' In this case '00:02.0' is the Root Port, the other device except the last are PCI bridges, specified with a wildcard for the bus number. Would this be a feature of interest for pciutils in general? Thanks! /Holger -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html