[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200908115006.3b9ba943@kicinski-fedora-pc1c0hjn.dhcp.thefacebook.com>
Date: Tue, 8 Sep 2020 11:50:06 -0700
From: Jakub Kicinski <kuba@...nel.org>
To: Parav Pandit <parav@...lanox.com>
Cc: davem@...emloft.net, netdev@...r.kernel.org,
Parav Pandit <parav@...dia.com>, Jiri Pirko <jiri@...dia.com>
Subject: Re: [PATCH net-next v2 5/6] devlink: Introduce controller number
On Tue, 8 Sep 2020 17:42:40 +0300 Parav Pandit wrote:
> A devlink port may be for a controller consist of PCI device.
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.
pf1 reprs are not listed.
Perhaps it'd be clearer if controllers where not interleaved?
> | |
> | --------- |
> | | sf(s) | |
> | ------- ---/----- ------- |
> | | pf0 |_____/ | pf1 | |
> | ------- ------- |
> | |
> | local controller-A (eswitch) (controller num=0) |
> -----------------------------------------------------
Powered by blists - more mailing lists