On Tue, Oct 24, 2023 at 01:50:16PM +0200, Jiri Pirko wrote:
> Tue, Oct 24, 2023 at 01:09:14PM CEST, [email protected] 
> wrote:
> >Hi,
> >
> >Currently ice supports creating port representors only for VFs. For that
> >use case they can be created and removed in one step.
> >
> >This patchset is refactoring current flow to support port representor
> >creation also for subfunctions and SIOV. In this case port representors
> >need to be createad and removed one by one. Also, they can be added and
> >removed while other port representors are running.
> >
> >To achieve that we need to change the switchdev configuration flow.
> >Three first patches are only cosmetic (renaming, removing not used code).
> >Next few ones are preparation for new flow. The most important one
> >is "add VF representor one by one". It fully implements new flow.
> >
> >New type of port representor (for subfunction) will be introduced in
> >follow up patchset.
> 
> Examples please. Show new outputs of devlink commands.
> 
> Thanks!
>

If you mean outputs after refactor to one by one solution nothing
has changed:

# devlink port show (after creating 4 VFs in switchdev mode)
pci/0000:18:00.0/0: type eth netdev ens785f0np0 flavour physical port 0 
splittable true lanes 8
pci/0000:18:00.0/2: type eth netdev ens785f0np0_0 flavour pcivf controller 0 
pfnum 0 vfnum 0 external false splittable false
pci/0000:18:00.0/4: type eth netdev ens785f0np0_3 flavour pcivf controller 0 
pfnum 0 vfnum 3 external false splittable false
pci/0000:18:00.0/5: type eth netdev ens785f0np0_1 flavour pcivf controller 0 
pfnum 0 vfnum 1 external false splittable false
pci/0000:18:00.0/6: type eth netdev ens785f0np0_2 flavour pcivf controller 0 
pfnum 0 vfnum 2 external false splittable false

According subfunction, it will also be in cover latter for patchset that
is implementing subfunction.

Commands:
# devlink dev eswitch set pci/0000:18:00.0 mode switchdev
# devlink port add pci/0000:18:00.0 flavour pcisf pfnum 0 sfnum 1000
# devlink port function set pci/0000:18:00.0/3 state active

Outputs:
Don't have it saved, will send it here after rebasing subfunction of top
of this one.

Thanks,
Michal

> >
> >Michal Swiatkowski (15):
> >  ice: rename switchdev to eswitch
> >  ice: remove redundant max_vsi_num variable
> >  ice: remove unused control VSI parameter
> >  ice: track q_id in representor
> >  ice: use repr instead of vf->repr
> >  ice: track port representors in xarray
> >  ice: remove VF pointer reference in eswitch code
> >  ice: make representor code generic
> >  ice: return pointer to representor
> >  ice: allow changing SWITCHDEV_CTRL VSI queues
> >  ice: set Tx topology every time new repr is added
> >  ice: realloc VSI stats arrays
> >  ice: add VF representors one by one
> >  ice: adjust switchdev rebuild path
> >  ice: reserve number of CP queues
> >
> > drivers/net/ethernet/intel/ice/ice.h          |  13 +-
> > drivers/net/ethernet/intel/ice/ice_devlink.c  |  29 +
> > drivers/net/ethernet/intel/ice/ice_devlink.h  |   1 +
> > drivers/net/ethernet/intel/ice/ice_eswitch.c  | 562 ++++++++++--------
> > drivers/net/ethernet/intel/ice/ice_eswitch.h  |  22 +-
> > .../net/ethernet/intel/ice/ice_eswitch_br.c   |  22 +-
> > drivers/net/ethernet/intel/ice/ice_lib.c      |  81 ++-
> > drivers/net/ethernet/intel/ice/ice_main.c     |   6 +-
> > drivers/net/ethernet/intel/ice/ice_repr.c     | 195 +++---
> > drivers/net/ethernet/intel/ice/ice_repr.h     |   9 +-
> > drivers/net/ethernet/intel/ice/ice_sriov.c    |  20 +-
> > drivers/net/ethernet/intel/ice/ice_tc_lib.c   |   4 +-
> > drivers/net/ethernet/intel/ice/ice_vf_lib.c   |   9 +-
> > drivers/net/ethernet/intel/ice/ice_vf_lib.h   |   2 +-
> > 14 files changed, 553 insertions(+), 422 deletions(-)
> >
> >-- 
> >2.41.0
> >
> >
_______________________________________________
Intel-wired-lan mailing list
[email protected]
https://lists.osuosl.org/mailman/listinfo/intel-wired-lan

Reply via email to