Re: [PATCH net-next v2 00/15][pull request] ice: support devlink subfunction

Michal Swiatkowski
2024-08-02T07:40:42Z

On Fri, Aug 02, 2024 at 09:30:07AM +0200, Michal Swiatkowski wrote:
> On Wed, Jul 31, 2024 at 03:10:11PM -0700, Tony Nguyen wrote:
> > Michal Swiatkowski says:
> >
> > Currently ice driver does not allow creating more than one networking
> > device per physical function. The only way to have more hardware backed
> > netdev is to use SR-IOV.
> >
> > Following patchset adds support for devlink port API. For each new
> > pcisf type port, driver allocates new VSI, configures all resources
> > needed, including dynamically MSIX vectors, program rules and registers
> > new netdev.
> >
> > This series supports only one Tx/Rx queue pair per subfunction.
> >
> > Example commands:
> > devlink port add pci/0000:31:00.1 flavour pcisf pfnum 1 sfnum 1000
> > devlink port function set pci/0000:31:00.1/1 hw_addr 00:00:00:00:03:14
> > devlink port function set pci/0000:31:00.1/1 state active
> > devlink port function del pci/0000:31:00.1/1
> >
> > Make the port representor and eswitch code generic to support
> > subfunction representor type.
> >
> > VSI configuration is slightly different between VF and SF. It needs to
> > be reflected in the code.
> > ---
> > v2:
> > - Add more recipients
> >
> > v1: https://lore.kernel.org/netdev/20240729223431.681842-1-anthony.l.nguyen@intel.com/
> >
> > The following are changes since commit 990c304930138dcd7a49763417e6e5313b81293e:
> > Add support for PIO p flag
> > and are available in the git repository at:
> > git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue 100GbE
> >
> > Michal Swiatkowski (8):
> > ice: treat subfunction VSI the same as PF VSI
> > ice: make representor code generic
> > ice: create port representor for SF
> > ice: don't set target VSI for subfunction
> > ice: check if SF is ready in ethtool ops
> > ice: implement netdevice ops for SF representor
> > ice: support subfunction devlink Tx topology
> > ice: basic support for VLAN in subfunctions
> >
> > Piotr Raczynski (7):
> > ice: add new VSI type for subfunctions
> > ice: export ice ndo_ops functions
> > ice: add basic devlink subfunctions support
> > ice: allocate devlink for subfunction
> > ice: base subfunction aux driver
> > ice: implement netdev for subfunction
> > ice: allow to activate and deactivate subfunction
> >
> > drivers/net/ethernet/intel/ice/Makefile | 2 +
> > .../net/ethernet/intel/ice/devlink/devlink.c | 47 ++
> > .../net/ethernet/intel/ice/devlink/devlink.h | 1 +
> > .../ethernet/intel/ice/devlink/devlink_port.c | 503 ++++++++++++++++++
> > .../ethernet/intel/ice/devlink/devlink_port.h | 46 ++
> > drivers/net/ethernet/intel/ice/ice.h | 19 +-
> > drivers/net/ethernet/intel/ice/ice_base.c | 5 +-
> > drivers/net/ethernet/intel/ice/ice_dcb_lib.c | 1 +
> > drivers/net/ethernet/intel/ice/ice_eswitch.c | 111 +++-
> > drivers/net/ethernet/intel/ice/ice_eswitch.h | 22 +-
> > drivers/net/ethernet/intel/ice/ice_ethtool.c | 7 +-
> > drivers/net/ethernet/intel/ice/ice_lib.c | 52 +-
> > drivers/net/ethernet/intel/ice/ice_lib.h | 3 +
> > drivers/net/ethernet/intel/ice/ice_main.c | 66 ++-
> > drivers/net/ethernet/intel/ice/ice_repr.c | 211 ++++++--
> > drivers/net/ethernet/intel/ice/ice_repr.h | 22 +-
> > drivers/net/ethernet/intel/ice/ice_sf_eth.c | 331 ++++++++++++
> > drivers/net/ethernet/intel/ice/ice_sf_eth.h | 33 ++
> > .../ethernet/intel/ice/ice_sf_vsi_vlan_ops.c | 21 +
> > .../ethernet/intel/ice/ice_sf_vsi_vlan_ops.h | 13 +
> > drivers/net/ethernet/intel/ice/ice_sriov.c | 4 +-
> > drivers/net/ethernet/intel/ice/ice_txrx.c | 2 +-
> > drivers/net/ethernet/intel/ice/ice_type.h | 1 +
> > drivers/net/ethernet/intel/ice/ice_vf_lib.c | 4 +-
> > .../net/ethernet/intel/ice/ice_vsi_vlan_ops.c | 4 +
> > drivers/net/ethernet/intel/ice/ice_xsk.c | 2 +-
> > 26 files changed, 1396 insertions(+), 137 deletions(-)
> > create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_eth.c
> > create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_eth.h
> > create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_vsi_vlan_ops.c
> > create mode 100644 drivers/net/ethernet/intel/ice/ice_sf_vsi_vlan_ops.h
> >
> > --
> > 2.42.0
> >
>
> [offlist]

Sorry, for that, forgot to remove CC, before sending. Hope it is not a
problem.

Mail client should have feature like for attachments:
"There is offlisti keyword, are you sure you want to CC someone" :p

>
> Hi Tony,
>
> Am I correct that now I should send v6 to iwl (+CC netdev) when you
> remove the patchset from dev-queue? I am little confused with Jiri
> comment about versioning PR. I though it is usuall thing.
>
> I already have done the changes that Jiri asked for (and Maciej from
> previous version).
>
> Thanks,
> Michal