[PATCH] doc: fix support table for ETH and VLAN flow items

Ferruh Yigit ferruh.yigit at xilinx.com
Wed Apr 20 19:51:47 CEST 2022


On 3/16/2022 12:01 PM, Ilya Maximets wrote:
> 'has_vlan' attribute is only supported by sfc, mlx5 and cnxk.
> Other drivers doesn't support it.  Most of them (like i40e) just
> ignore it silently.  Some drivers (like mlx4) never had a full
> support of the eth item even before introduction of 'has_vlan'
> (mlx4 allows to match on the destination MAC only).
> 
> Same for the 'has_more_vlan' flag of the vlan item.
> 
> Changing the support level to 'partial' for all such drivers.
> This doesn't solve the issue, but at least marks the problematic
> drivers.
> 

Hi Asaf,

This was the kind of maintanance issue I was referring to have this kind 
of capability documentation for flow API.

All below drivers are using 'RTE_FLOW_ITEM_TYPE_VLAN', the script 
verifies this, but are they actually supporting VLAN filter and in which 
case?

We need comment from driver maintainers about the support level.

> Some details are available in:
>    https://bugs.dpdk.org/show_bug.cgi?id=958
> 
> Fixes: 09315fc83861 ("ethdev: add VLAN attributes to ethernet and VLAN items")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Ilya Maximets <i.maximets at ovn.org>
> ---
> 
> I added the stable in CC, but the patch should be extended while
> backporting.  For 21.11 the cnxk driver should be also updated,
> for 20.11, sfc driver should also be included.
> 
>   doc/guides/nics/features/bnxt.ini   | 4 ++--
>   doc/guides/nics/features/cxgbe.ini  | 4 ++--
>   doc/guides/nics/features/dpaa2.ini  | 4 ++--
>   doc/guides/nics/features/e1000.ini  | 2 +-
>   doc/guides/nics/features/enic.ini   | 4 ++--
>   doc/guides/nics/features/hinic.ini  | 2 +-
>   doc/guides/nics/features/hns3.ini   | 4 ++--
>   doc/guides/nics/features/i40e.ini   | 4 ++--
>   doc/guides/nics/features/iavf.ini   | 4 ++--
>   doc/guides/nics/features/ice.ini    | 4 ++--
>   doc/guides/nics/features/igc.ini    | 2 +-
>   doc/guides/nics/features/ipn3ke.ini | 4 ++--
>   doc/guides/nics/features/ixgbe.ini  | 4 ++--
>   doc/guides/nics/features/mlx4.ini   | 4 ++--
>   doc/guides/nics/features/mvpp2.ini  | 4 ++--
>   doc/guides/nics/features/tap.ini    | 4 ++--
>   doc/guides/nics/features/txgbe.ini  | 4 ++--
>   17 files changed, 31 insertions(+), 31 deletions(-)
> 
> diff --git a/doc/guides/nics/features/bnxt.ini b/doc/guides/nics/features/bnxt.ini
> index afb5414b49..ac682c5779 100644
> --- a/doc/guides/nics/features/bnxt.ini
> +++ b/doc/guides/nics/features/bnxt.ini
> @@ -57,7 +57,7 @@ Perf doc             = Y
>   
>   [rte_flow items]
>   any                  = Y
> -eth                  = Y
> +eth                  = P
>   ipv4                 = Y
>   ipv6                 = Y
>   gre                  = Y
> @@ -71,7 +71,7 @@ represented_port     = Y
>   tcp                  = Y
>   udp                  = Y
>   vf                   = Y
> -vlan                 = Y
> +vlan                 = P
>   vxlan                = Y
>   
>   [rte_flow actions]
> diff --git a/doc/guides/nics/features/cxgbe.ini b/doc/guides/nics/features/cxgbe.ini
> index f674803ec4..f9912390fb 100644
> --- a/doc/guides/nics/features/cxgbe.ini
> +++ b/doc/guides/nics/features/cxgbe.ini
> @@ -36,7 +36,7 @@ x86-64               = Y
>   Usage doc            = Y
>   
>   [rte_flow items]
> -eth                  = Y
> +eth                  = P
>   ipv4                 = Y
>   ipv6                 = Y
>   pf                   = Y
> @@ -44,7 +44,7 @@ phy_port             = Y
>   tcp                  = Y
>   udp                  = Y
>   vf                   = Y
> -vlan                 = Y
> +vlan                 = P
>   
>   [rte_flow actions]
>   count                = Y
> diff --git a/doc/guides/nics/features/dpaa2.ini b/doc/guides/nics/features/dpaa2.ini
> index 4c06841a87..09ce66c788 100644
> --- a/doc/guides/nics/features/dpaa2.ini
> +++ b/doc/guides/nics/features/dpaa2.ini
> @@ -31,7 +31,7 @@ ARMv8                = Y
>   Usage doc            = Y
>   
>   [rte_flow items]
> -eth                  = Y
> +eth                  = P
>   gre                  = Y
>   icmp                 = Y
>   ipv4                 = Y
> @@ -41,7 +41,7 @@ raw                  = Y
>   sctp                 = Y
>   tcp                  = Y
>   udp                  = Y
> -vlan                 = Y
> +vlan                 = P
>   
>   [rte_flow actions]
>   drop                 = Y
> diff --git a/doc/guides/nics/features/e1000.ini b/doc/guides/nics/features/e1000.ini
> index e4bdef6da9..a9cbed1c3c 100644
> --- a/doc/guides/nics/features/e1000.ini
> +++ b/doc/guides/nics/features/e1000.ini
> @@ -31,7 +31,7 @@ x86-32               = Y
>   x86-64               = Y
>   
>   [rte_flow items]
> -eth                  = Y
> +eth                  = P
>   ipv4                 = Y
>   ipv6                 = Y
>   raw                  = Y
> diff --git a/doc/guides/nics/features/enic.ini b/doc/guides/nics/features/enic.ini
> index 61bec4910e..6dbea9f36e 100644
> --- a/doc/guides/nics/features/enic.ini
> +++ b/doc/guides/nics/features/enic.ini
> @@ -40,7 +40,7 @@ Usage doc            = Y
>   
>   [rte_flow items]
>   ecpri                = Y
> -eth                  = Y
> +eth                  = P
>   geneve               = Y
>   geneve_opt           = Y
>   gtp                  = Y
> @@ -52,7 +52,7 @@ raw                  = Y
>   sctp                 = Y
>   tcp                  = Y
>   udp                  = Y
> -vlan                 = Y
> +vlan                 = P
>   vxlan                = Y
>   
>   [rte_flow actions]
> diff --git a/doc/guides/nics/features/hinic.ini b/doc/guides/nics/features/hinic.ini
> index 9f6f0ebf3a..ada6607fe9 100644
> --- a/doc/guides/nics/features/hinic.ini
> +++ b/doc/guides/nics/features/hinic.ini
> @@ -40,7 +40,7 @@ ARMv8                = Y
>   
>   [rte_flow items]
>   any                  = Y
> -eth                  = Y
> +eth                  = P
>   icmp                 = Y
>   icmp6                = Y
>   ipv4                 = Y
> diff --git a/doc/guides/nics/features/hns3.ini b/doc/guides/nics/features/hns3.ini
> index 405b94f05c..338b4e6864 100644
> --- a/doc/guides/nics/features/hns3.ini
> +++ b/doc/guides/nics/features/hns3.ini
> @@ -51,7 +51,7 @@ Linux                = Y
>   ARMv8                = Y
>   
>   [rte_flow items]
> -eth                  = Y
> +eth                  = P
>   geneve               = Y
>   icmp                 = Y
>   ipv4                 = Y
> @@ -60,7 +60,7 @@ nvgre                = Y
>   sctp                 = Y
>   tcp                  = Y
>   udp                  = Y
> -vlan                 = Y
> +vlan                 = P
>   vxlan                = Y
>   vxlan_gpe            = Y
>   
> diff --git a/doc/guides/nics/features/i40e.ini b/doc/guides/nics/features/i40e.ini
> index dd18fec217..6e141de326 100644
> --- a/doc/guides/nics/features/i40e.ini
> +++ b/doc/guides/nics/features/i40e.ini
> @@ -54,7 +54,7 @@ Power8               = Y
>   [rte_flow items]
>   ah                   = Y
>   esp                  = Y
> -eth                  = Y
> +eth                  = P
>   gre                  = Y
>   gtpc                 = Y
>   gtpu                 = Y
> @@ -69,7 +69,7 @@ sctp                 = Y
>   tcp                  = Y
>   udp                  = Y
>   vf                   = Y
> -vlan                 = Y
> +vlan                 = P
>   vxlan                = Y
>   
>   [rte_flow actions]
> diff --git a/doc/guides/nics/features/iavf.ini b/doc/guides/nics/features/iavf.ini
> index 01f514239e..c6694a1a94 100644
> --- a/doc/guides/nics/features/iavf.ini
> +++ b/doc/guides/nics/features/iavf.ini
> @@ -40,7 +40,7 @@ ah                   = Y
>   arp_eth_ipv4         = Y
>   ecpri                = Y
>   esp                  = Y
> -eth                  = Y
> +eth                  = P
>   gre                  = Y
>   gtpc                 = Y
>   gtpu                 = Y
> @@ -57,7 +57,7 @@ ppp                  = Y
>   sctp                 = Y
>   tcp                  = Y
>   udp                  = Y
> -vlan                 = Y
> +vlan                 = P
>   
>   [rte_flow actions]
>   count                = Y
> diff --git a/doc/guides/nics/features/ice.ini b/doc/guides/nics/features/ice.ini
> index 7861790a51..0bd2f2d7b2 100644
> --- a/doc/guides/nics/features/ice.ini
> +++ b/doc/guides/nics/features/ice.ini
> @@ -53,7 +53,7 @@ ah                   = Y
>   any                  = Y
>   arp_eth_ipv4         = Y
>   esp                  = Y
> -eth                  = Y
> +eth                  = P
>   gtpu                 = Y
>   gtp_psc              = Y
>   icmp                 = Y
> @@ -71,7 +71,7 @@ raw                  = Y
>   sctp                 = Y
>   tcp                  = Y
>   udp                  = Y
> -vlan                 = Y
> +vlan                 = P
>   vxlan                = Y
>   
>   [rte_flow actions]
> diff --git a/doc/guides/nics/features/igc.ini b/doc/guides/nics/features/igc.ini
> index f2c6fa28ad..b5deea3f61 100644
> --- a/doc/guides/nics/features/igc.ini
> +++ b/doc/guides/nics/features/igc.ini
> @@ -35,7 +35,7 @@ Linux                = Y
>   x86-64               = Y
>   
>   [rte_flow items]
> -eth                  = Y
> +eth                  = P
>   ipv4                 = Y
>   ipv6                 = Y
>   tcp                  = Y
> diff --git a/doc/guides/nics/features/ipn3ke.ini b/doc/guides/nics/features/ipn3ke.ini
> index defc39f525..1f6b780273 100644
> --- a/doc/guides/nics/features/ipn3ke.ini
> +++ b/doc/guides/nics/features/ipn3ke.ini
> @@ -47,13 +47,13 @@ x86-32               = Y
>   x86-64               = Y
>   
>   [rte_flow items]
> -eth                  = Y
> +eth                  = P
>   ipv4                 = Y
>   mpls                 = Y
>   nvgre                = Y
>   tcp                  = Y
>   udp                  = Y
> -vlan                 = Y
> +vlan                 = P
>   vxlan                = Y
>   
>   [rte_flow actions]
> diff --git a/doc/guides/nics/features/ixgbe.ini b/doc/guides/nics/features/ixgbe.ini
> index c5333d1142..e5cef81f9a 100644
> --- a/doc/guides/nics/features/ixgbe.ini
> +++ b/doc/guides/nics/features/ixgbe.ini
> @@ -56,7 +56,7 @@ x86-32               = Y
>   x86-64               = Y
>   
>   [rte_flow items]
> -eth                  = Y
> +eth                  = P
>   e_tag                = Y
>   fuzzy                = Y
>   ipv4                 = Y
> @@ -66,7 +66,7 @@ raw                  = Y
>   sctp                 = Y
>   tcp                  = Y
>   udp                  = Y
> -vlan                 = Y
> +vlan                 = P
>   vxlan                = Y
>   
>   [rte_flow actions]
> diff --git a/doc/guides/nics/features/mlx4.ini b/doc/guides/nics/features/mlx4.ini
> index 82f6f0bc0b..03f59a5f8b 100644
> --- a/doc/guides/nics/features/mlx4.ini
> +++ b/doc/guides/nics/features/mlx4.ini
> @@ -38,11 +38,11 @@ x86-64               = Y
>   Usage doc            = Y
>   
>   [rte_flow items]
> -eth                  = Y
> +eth                  = P
>   ipv4                 = Y
>   tcp                  = Y
>   udp                  = Y
> -vlan                 = Y
> +vlan                 = P
>   
>   [rte_flow actions]
>   drop                 = Y
> diff --git a/doc/guides/nics/features/mvpp2.ini b/doc/guides/nics/features/mvpp2.ini
> index 1bcf74875e..653c9d08cb 100644
> --- a/doc/guides/nics/features/mvpp2.ini
> +++ b/doc/guides/nics/features/mvpp2.ini
> @@ -24,13 +24,13 @@ ARMv8                = Y
>   Usage doc            = Y
>   
>   [rte_flow items]
> -eth                  = Y
> +eth                  = P
>   ipv4                 = Y
>   ipv6                 = Y
>   raw                  = Y
>   tcp                  = Y
>   udp                  = Y
> -vlan                 = Y
> +vlan                 = P
>   
>   [rte_flow actions]
>   drop                 = Y
> diff --git a/doc/guides/nics/features/tap.ini b/doc/guides/nics/features/tap.ini
> index b4a356e5d5..f26355e57f 100644
> --- a/doc/guides/nics/features/tap.ini
> +++ b/doc/guides/nics/features/tap.ini
> @@ -27,12 +27,12 @@ x86-64               = Y
>   Usage doc            = Y
>   
>   [rte_flow items]
> -eth                  = Y
> +eth                  = P
>   ipv4                 = Y
>   ipv6                 = Y
>   tcp                  = Y
>   udp                  = Y
> -vlan                 = Y
> +vlan                 = P
>   
>   [rte_flow actions]
>   drop                 = Y
> diff --git a/doc/guides/nics/features/txgbe.ini b/doc/guides/nics/features/txgbe.ini
> index 22c74ba9e3..e21083052c 100644
> --- a/doc/guides/nics/features/txgbe.ini
> +++ b/doc/guides/nics/features/txgbe.ini
> @@ -53,7 +53,7 @@ x86-32               = Y
>   x86-64               = Y
>   
>   [rte_flow items]
> -eth                  = Y
> +eth                  = P
>   e_tag                = Y
>   fuzzy                = Y
>   ipv4                 = Y
> @@ -63,7 +63,7 @@ raw                  = Y
>   sctp                 = Y
>   tcp                  = Y
>   udp                  = Y
> -vlan                 = Y
> +vlan                 = P
>   vxlan                = Y
>   
>   [rte_flow actions]



More information about the stable mailing list