Thread (44 messages) 44 messages, 6 authors, 2019-03-21

RE: [PATCH net-next 6/8] devlink: introduce port's peer netdevs

From: Parav Pandit <hidden>
Date: 2019-03-04 05:08:42

-----Original Message-----
From: netdev-owner@vger.kernel.org <redacted> On
Behalf Of Jiri Pirko
Sent: Wednesday, February 27, 2019 7:08 AM
To: Jakub Kicinski <redacted>
Cc: davem@davemloft.net; oss-drivers@netronome.com;
netdev@vger.kernel.org
Subject: Re: [PATCH net-next 6/8] devlink: introduce port's peer netdevs

Tue, Feb 26, 2019 at 07:24:34PM CET, jakub.kicinski@netronome.com wrote:
quoted
Devlink ports represent ports of a switch device (or SR-IOV NIC which
has an embedded switch).
Need not be.
As you know,
In switchdev mode, there are two ports. hostport and switchport.
Switch port represented by representor netdevice and services ingress traffic from hostport.

hostport is connected to NIC txq, rxq and rdma queues.

Each should be managed/configured separately.

 In case of SR-IOV when PCIe PFs are exposed
quoted
the PFs which are directly connected to the local machine may also
spawn PF netdev (much like VFs have a port/"repr" and an actual VF
netdev).

Allow devlink to expose such linking. There is currently no way to find
out which netdev corresponds to which PF.

Example:

$ devlink port
pci/0000:82:00.0/0: type eth netdev p4p1 flavour physical
pci/0000:82:00.0/10000: type eth netdev eth1 flavour pci_pf pf 0
peer_netdev enp130s0
pci/0000:82:00.0/10001: type eth netdev eth0 flavour pci_vf pf 0 vf 0
pci/0000:82:00.0/10002: type eth netdev eth2 flavour pci_vf pf 0 vf 1
Peer as the other side of a "virtual cable". For PF, that is probably sufficient.
But I think what a "peer of devlink port" should be "a devlink port".

Not sure about VF.

Consider a simple problem of setting up a VF mac address. In legacy, you do
it like this:
$ ip link set eth2 vf 1 mac 00:52:44:11:22:33 However, in new model, you so
far cannot do that.

What I was thinking about was some "dummy peer" which would be on the
host. Not sure if only as a "dummy peer devlink port" or even as some sort
of "dummy netdev".
I think we shouldn't bring up this convoluted concept of dummy/peer netdev.
A simpler scheme is to represent and configure what port does.
Rep-netdev is well defined switchport.
hostport should be used to configured hostport configurations using devlink.
netdev object for hostport config is probably too heavy and we should just continue with hostport.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help