RE: [net-next v5 13/15] devlink: Add devlink port documentation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> From: Jakub Kicinski <kuba@xxxxxxxxxx>
> Sent: Wednesday, December 16, 2020 6:28 AM
> 
> On Tue, 15 Dec 2020 01:03:56 -0800 Saeed Mahameed wrote:
> > +PCI controllers
> > +---------------
> > +In most cases a PCI device has only one controller. A controller
> > +consists of potentially multiple physical and virtual functions. Such
> > +PCI function consists of one or more ports.
> 
> s/Such//
>
Ack.
 
> you say consists in two consecutive sentences.
> 
> > This port of the function is represented by the devlink eswitch port.
> 
First sentence describe controller. Second sentence describe function.
So what is wrong in that?

> "This port of the function"? Why not just "Each port"?
> 
That's fine too. Will simplify.

> > +A PCI Device connected to multiple CPUs or multiple PCI root
> > +complexes or
> 
> Why is device capitalized all of the sudden?
>
Will fix.
 
> > +SmartNIC, however, may have multiple controllers. For a device with
> > +multiple
> 
> a SmartNIC or SmartNICs
> 
> > +controllers, each controller is distinguished by a unique controller
> number.
> > +An eswitch on the PCI device support ports of multiple controllers.
> 
> eswitch is on a PCI device?
>
Will change.
 
> > +An example view of a system with two controllers::
> > +
> > +                 ---------------------------------------------------------
> > +                 |                                                       |
> > +                 |           --------- ---------         ------- ------- |
> > +    -----------  |           | vf(s) | | sf(s) |         |vf(s)| |sf(s)| |
> > +    | server  |  | -------   ----/---- ---/----- ------- ---/--- ---/--- |
> > +    | pci rc  |=== | pf0 |______/________/       | pf1 |___/_______/     |
> > +    | connect |  | -------                       -------                 |
> > +    -----------  |     | controller_num=1 (no eswitch)                   |
> > +                 ------|--------------------------------------------------
> > +                 (internal wire)
> > +                       |
> > +                 ---------------------------------------------------------
> > +                 | devlink eswitch ports and reps                        |
> > +                 | ----------------------------------------------------- |
> > +                 | |ctrl-0 | ctrl-0 | ctrl-0 | ctrl-0 | ctrl-0 |ctrl-0 | |
> > +                 | |pf0    | pf0vfN | pf0sfN | pf1    | pf1vfN |pf1sfN | |
> > +                 | ----------------------------------------------------- |
> > +                 | |ctrl-1 | ctrl-1 | ctrl-1 | ctrl-1 | ctrl-1 |ctrl-1 | |
> > +                 | |pf0    | pf0vfN | pf0sfN | pf1    | pf1vfN |pf1sfN | |
> > +                 | ----------------------------------------------------- |
> > +                 |                                                       |
> > +                 |                                                       |
> > +    -----------  |           --------- ---------         ------- ------- |
> > +    | smartNIC|  |           | vf(s) | | sf(s) |         |vf(s)| |sf(s)| |
> > +    | pci rc  |==| -------   ----/---- ---/----- ------- ---/--- ---/--- |
> > +    | connect |  | | pf0 |______/________/       | pf1 |___/_______/     |
> > +    -----------  | -------                       -------                 |
> > +                 |                                                       |
> > +                 |  local controller_num=0 (eswitch)                     |
> > +
> > + ---------------------------------------------------------
> > +
> > +In above example, external controller (identified by controller
> > +number = 1) doesn't have eswitch. Local controller (identified by
> > +controller number = 0) has the eswitch. Devlink instance on local
> > +controller has eswitch devlink ports representing ports for both the
> controllers.
> > +
> > +Port function configuration
> > +===========================
> > +
> > +A user can configure the port function attribute before enumerating
> > +the
> 
> s/A user/User/
> 
> /port function attribute/$something_meaningful/
> 
May be just say function attribute?

> > +PCI function. Usually it means, user should configure port function
> > +attribute
> 
> attributes, plural
> 
Yes, but at present there is only one i.e. mac address, so didn't use plural.




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux