Predict/force PCI slot id given by the kernel to NICs

Jaime Arrocha jarrocha27 at gmail.com
Tue May 20 16:55:09 EDT 2014


Good day all,

I am working on a Proliant server model which have 6 physical pci slots.
They are going to be used for NICs with either 2 or 4 interfaces and
installed in an arbitrarily order in the slots. By this I mean that the a
certain box will only have a card/s on only certain slots.

I need to write a program to its able to predict/read what bus id (slot id)
the kernel gives to each interface for every card. The program should be
able to relate the bus id to the slot where it is physically installed at.

I understand that some cards obtain a different bus id's even do they are
connected on the same physical pci slot. So if I could find a way where the
program is able to control/predict what bus id is given to them by the
kernel to each slot, that would solve my problem.

The reason for this is because, by identifying the slot where a certain
card is installed, I can use that bus id to change the udev rule naming for
the card's interfaces.

For example,
Card at slot 1? rename its interfaces to s1pX
where 'p' stands for port.

I just need help being pointed to the right direction. Will I find all my
answers at pci.h?
The man page for lspci sends me to this file.

Let me know if I need to be more clear.

Thanks for your time.

Jaime
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20140520/e0ed3c1b/attachment.html 


More information about the Kernelnewbies mailing list