[systemd-devel] Proposal: Add biosdevname naming scheme to systemd

Andrei Borzenkov arvidjaar at gmail.com
Tue Oct 20 13:02:17 PDT 2015


20.10.2015 17:30, Jordan Hargrave пишет:
> On Tue, Oct 20, 2015 at 1:15 AM, Andrei Borzenkov <arvidjaar at gmail.com> wrote:
>> On Tue, Oct 20, 2015 at 7:46 AM, Jordan Hargrave <jharg93 at gmail.com> wrote:
>>> On Mon, Mar 2, 2015 at 1:17 PM, Tom Gundersen <teg at jklm.no> wrote:
>>>> Hi Jordan,
>>>>
>>>> On Mon, Mar 2, 2015 at 4:45 PM, Jordan Hargrave <jharg93 at gmail.com> wrote:
>>>>> There are currently two competing naming mechanisms for network cards,
>>>>> biosdevname and systemd.  Systemd currently has some limitations on naming
>>>>> cards that use network partitioning or support SR-IOV.
>>>>
>>>> Could you point to an example so we can fix it? I thought all bug
>>>> reports had been handled, but maybe I lost track of something.
>>>>
>>>
>>> I have a quad-port NIC:
>>> 0000:40:00.0 = PCIE bridge (SMBIOS Slot 2)
>>> 0000:41:00.0 = Ethernet Device (port1)
>>> 0000:41:00.1 = Ethernet Device (port2)
>>> 0000:42:00.0 = Ethernet Device (port3)
>>> 0000:42:00.1 = Ethernet Device (port4)
>>>
>>> biosdevname would name these p2p1, p2p2, p2p3, p2p4 respectively.
>>>
>>
>> How does it determine that 41 and 42 are the same device? I.e. how
>> does it differ from real bridge with two independent two-port cards
>> behind? Could you explain what information it is using? Is it exported
>> in sysfs?
>>
>> ...
>
> It knows they are on the same slot as the parent device has SMBIOS
> Slot#2 (Type 9).  So all child devices of a physical slot are on the
> same card.  I'm currently using a patch to systemd that reads SMBIOS
> type 9.  There isn't a kernel sysfs variable that displays this.
>

This gives us slot ID, but how do we know which of function 0 on this 
slot ID is port 0 and which is port 2? There is nothing in SMBIOS 
description of Type 9 that answers it.


More information about the systemd-devel mailing list