On Wed, Jul 6, 2016 at 3:29 PM, Tariq Toukan <tar...@mellanox.com> wrote:
> From: Moshe Shemesh <mo...@mellanox.com>

> Enable activating VST QinQ mode by IP Link tool.
> Add parameter vlan protocol to the function ndo_set_vf_vlan.
> Vlan protocol by default is 802.1Q, setting vf vlan protocol to
> 802.1ad sets the vf to VST QinQ mode.
> Add IFLA_VF_VLAN_INFO in addition to IFLA_VF_VLAN to keep backward
> compatibility with older versions of IP Link tool.

Looking on the code, I understand that you are adding a knob to set
the vlan protocol for VST mode.

What I am not clear about, is why you call it QinQ? is that targeted
for a mixed VGT/VST mode where the guest put CVLAN and the HW
adds/strips SVLAN?

Is there anything in the API that actually is dealing/provisioning the
guest side of things? if not, why call it QinQ?

>  drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h    |  3 ++-
>  drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c  |  9 +++++--
>  drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c    |  6 ++++-
>  drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.h    |  2 +-
>  drivers/net/ethernet/emulex/benet/be_main.c        |  6 ++++-
>  drivers/net/ethernet/intel/fm10k/fm10k.h           |  2 +-
>  drivers/net/ethernet/intel/fm10k/fm10k_iov.c       |  6 ++++-
>  drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c | 11 +++++++--
>  drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h |  4 ++--
>  drivers/net/ethernet/intel/igb/igb_main.c          |  9 ++++---
>  drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c     |  5 +++-
>  drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.h     |  2 +-

>  drivers/net/ethernet/mellanox/mlx4/cmd.c           | 25 +++++++++++++++++--
>  drivers/net/ethernet/mellanox/mlx4/en_netdev.c     |  5 ++--
>  include/linux/mlx4/cmd.h                           |  3 ++-

The patch does few logical changes

1. introduce new rtnl UAPI that adds the ability for user-space to
specify vlan protocol for the VF

2. enhances the existing set_vf_vlan ndo to use that

3. adds the actual mlx4 implementation for using the vlan proto
(nothing about that is documented in the change log)

You better put the mlx4 part into a downstream patch, so things are
robust and well bisectable.

>  drivers/net/ethernet/mellanox/mlx5/core/en_main.c  |  6 ++++-
>  drivers/net/ethernet/qlogic/qede/qede_main.c       |  6 ++++-
>  drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov.h  |  2 +-
>  .../net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c   |  5 +++-
>  drivers/net/ethernet/sfc/sriov.c                   |  5 +++-
>  drivers/net/ethernet/sfc/sriov.h                   |  2 +-
>  include/linux/if_link.h                            |  1 +
>  include/linux/netdevice.h                          |  6 +++--
>  include/uapi/linux/if_link.h                       | 10 +++++++-
>  net/core/rtnetlink.c                               | 28 
> ++++++++++++++++++++--
>  25 files changed, 136 insertions(+), 33 deletions(-)

Reply via email to