[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Wed, 9 Sep 2020 03:06:18 +0000
From: Parav Pandit <parav@...dia.com>
To: Jakub Kicinski <kuba@...nel.org>, Parav Pandit <parav@...lanox.com>
CC: "davem@...emloft.net" <davem@...emloft.net>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
Jiri Pirko <jiri@...dia.com>
Subject: RE: [PATCH net-next v2 5/6] devlink: Introduce controller number
> From: Jakub Kicinski <kuba@...nel.org>
> Sent: Wednesday, September 9, 2020 12:20 AM
>
> Humm?
>
> > A devlink instance holds ports of two types of controllers.
> > (1) controller discovered on same system where eswitch resides This is
> > the case where PCI PF/VF of a controller and devlink eswitch instance
> > both are located on a single system.
> > (2) controller located on external host system.
> > This is the case where a controller is located in one system and its
> > devlink eswitch ports are located in a different system.
> >
> > When a devlink eswitch instance serves the devlink ports of both
> > controllers together, PCI PF/VF numbers may overlap.
> > Due to this a unique phys_port_name cannot be constructed.
> >
> > For example in below such system controller-A and controller-B, each
> > has PCI PF pf0 whose eswitch ports are present in controller-A.
> > These results in phys_port_name as "pf0" for both.
> > Similar problem exists for VFs and upcoming Sub functions.
> >
> > An example view of two controller systems:
> >
> > -----------------------------------------------------
> > | |
> > | --------- --------- |
> > ------------- | | vf(s) | | sf(s) | |
> > | server | | ------- ----/---- ---/----- ------- |
> > | pci rc |=====| pf0 |______/________/ | pf1 | |
> > | connection| | ------- ------- |
> > ------------- | | controller-B (no eswitch) (controller num=1)|
> > ------|----------------------------------------------
> > (internal wire)
> > |
> > -----------------------------------------------------
> > | devlink eswitch ports and reps |
> > | --------------------------------------------- |
> > | |ctrl-A | ctrl-B | ctrl-A | ctrl-B | ctrl-B | |
> > | |pf0 | pf0 | pf0vfN | pf0vfN | pf0sfN | |
> > | --------------------------------------------- |
>
> ^^^^^^^^
>
> ctrl-A doesn't have VFs, but sfs below.
>
Right. Instead of showing too many overlapping devices in both controllers, picked sf ports.
> pf1 reprs are not listed.
>
It was hard to cover replicate same topology as that of pf0, so It is omitted.
I guess I should put that note to avoid this confusion.
> Perhaps it'd be clearer if controllers where not interleaved?
Yes, Jiri also pointed out to get rid of naming A and B and use numbers.
Little older diagram got it. :-(
>
> > | |
> > | --------- |
> > | | sf(s) | |
> > | ------- ---/----- ------- |
> > | | pf0 |_____/ | pf1 | |
> > | ------- ------- |
> > | |
> > | local controller-A (eswitch) (controller num=0) |
> > -----------------------------------------------------
Powered by blists - more mailing lists