[Intel-wired-lan] [PATCH net v3 1/2] ice: Introduce enabling promiscuous mode on multiple VF's

Szlosek, Marek marek.szlosek at intel.com
Fri Jul 22 10:27:56 UTC 2022



> -----Original Message-----
> From: Intel-wired-lan <intel-wired-lan-bounces at osuosl.org> On Behalf Of
> Michal Wilczynski
> Sent: poniedziałek, 4 lipca 2022 15:12
> To: intel-wired-lan at lists.osuosl.org
> Cc: Wilczynski, Michal <michal.wilczynski at intel.com>
> Subject: [Intel-wired-lan] [PATCH net v3 1/2] ice: Introduce enabling
> promiscuous mode on multiple VF's
> 
> In current implementation default VSI switch filter is only able to forward
> traffic to a single VSI. This limits promiscuous mode with private flag 'vf-true-
> promisc-support' to a single VF. Enabling it on the second VF won't work. Also
> allmulticast support doesn't seem to be properly implemented when vf-true-
> promisc-support is true.
> 
> Use standard ice_add_rule_internal() function that already implements
> forwarding to multiple VSI's instead of constructing AQ call manually.
> 
> Add switch filter for allmulticast mode when vf-true-promisc-support is
> enabled. The same filter is added regardless of the flag - it doesn't matter for
> this case.
> 
> Remove unnecessary fields in switch structure. From now on book keeping
> will be done by ice_add_rule_internal().
> 
> Refactor unnecessarily passed function arguments.
> 
> To test:
> 1) Create 2 VM's, and two VF's. Attach VF's to VM's.
> 2) Enable promiscuous mode on both of them and check if
>    traffic is seen on both of them.
> 
> Fixes: 01b5e89aab49 ("ice: Add VF promiscuous support")
> Signed-off-by: Michal Wilczynski <michal.wilczynski at intel.com>
> ---
>  drivers/net/ethernet/intel/ice/ice.h          |   2 -
>  drivers/net/ethernet/intel/ice/ice_eswitch.c  |   8 +-
>  drivers/net/ethernet/intel/ice/ice_ethtool.c  |   2 +-
>  drivers/net/ethernet/intel/ice/ice_lib.c      |  67 ++++-----
>  drivers/net/ethernet/intel/ice/ice_lib.h      |   9 +-
>  drivers/net/ethernet/intel/ice/ice_main.c     |  14 +-
>  drivers/net/ethernet/intel/ice/ice_switch.c   | 134 +++++++++---------
>  drivers/net/ethernet/intel/ice/ice_switch.h   |   6 +-
>  drivers/net/ethernet/intel/ice/ice_type.h     |   4 -
>  drivers/net/ethernet/intel/ice/ice_vf_lib.c   |  10 +-
>  drivers/net/ethernet/intel/ice/ice_vf_lib.h   |   4 +-
>  drivers/net/ethernet/intel/ice/ice_virtchnl.c |  58 ++++----
>  12 files changed, 151 insertions(+), 167 deletions(-)
> 
> diff --git a/drivers/net/ethernet/intel/ice/ice.h
> b/drivers/net/ethernet/intel/ice/ice.h
> index 60453b3b8d23..d8d64914e413 100644
> --- a/drivers/net/ethernet/intel/ice/ice.h
> +++ b/drivers/net/ethernet/intel/ice/ice.h

Tested-by: Marek Szlosek <marek.szlosek at intel.com>




More information about the Intel-wired-lan mailing list