DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH 0/3] fix i40e bug for flow filter
@ 2020-04-27  7:14 Wei Zhao
  2020-04-27  7:14 ` [dpdk-dev] [PATCH 1/3] net/i40e: remove ARP type check for FDIR filter Wei Zhao
                   ` (3 more replies)
  0 siblings, 4 replies; 32+ messages in thread
From: Wei Zhao @ 2020-04-27  7:14 UTC (permalink / raw)
  To: dev; +Cc: beilei.xing, maxime.leroy

fix i40e bug for flow filter and add comment in doc. 

Wei Zhao (3):
  net/i40e: remove ARP type check for FDIR filter
  doc: input set requirement of each pctype for FDIR
  net/i40e: remove teardown when flush FDIR filter

 doc/guides/nics/i40e.rst     | 7 +++++++
 drivers/net/i40e/i40e_flow.c | 5 -----
 2 files changed, 7 insertions(+), 5 deletions(-)

-- 
2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* [dpdk-dev] [PATCH 1/3] net/i40e: remove ARP type check for FDIR filter
  2020-04-27  7:14 [dpdk-dev] [PATCH 0/3] fix i40e bug for flow filter Wei Zhao
@ 2020-04-27  7:14 ` Wei Zhao
  2020-04-28  1:20   ` Xing, Beilei
  2020-04-27  7:14 ` [dpdk-dev] [PATCH 2/3] doc: input set requirement of each pctype for FDIR Wei Zhao
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 32+ messages in thread
From: Wei Zhao @ 2020-04-27  7:14 UTC (permalink / raw)
  To: dev; +Cc: beilei.xing, maxime.leroy, stable, Wei Zhao

I have try to enable ARP ethertype for FDIR filter,
it work well for ARP for FDIR filter, so delete it.

Bugzilla ID: 402
Fixes: 42044b69c67d ("net/i40e: support input set selection for FDIR")
Cc: stable@dpdk.org

Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
---
 drivers/net/i40e/i40e_flow.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c
index 7e64ae53a..1533d5abb 100644
--- a/drivers/net/i40e/i40e_flow.c
+++ b/drivers/net/i40e/i40e_flow.c
@@ -2666,7 +2666,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev,
 				if (next_type == RTE_FLOW_ITEM_TYPE_VLAN ||
 				    ether_type == RTE_ETHER_TYPE_IPV4 ||
 				    ether_type == RTE_ETHER_TYPE_IPV6 ||
-				    ether_type == RTE_ETHER_TYPE_ARP ||
 				    ether_type == outer_tpid) {
 					rte_flow_error_set(error, EINVAL,
 						     RTE_FLOW_ERROR_TYPE_ITEM,
@@ -2711,7 +2710,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev,
 
 				if (ether_type == RTE_ETHER_TYPE_IPV4 ||
 				    ether_type == RTE_ETHER_TYPE_IPV6 ||
-				    ether_type == RTE_ETHER_TYPE_ARP ||
 				    ether_type == outer_tpid) {
 					rte_flow_error_set(error, EINVAL,
 						     RTE_FLOW_ERROR_TYPE_ITEM,
-- 
2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* [dpdk-dev] [PATCH 2/3] doc: input set requirement of each pctype for FDIR
  2020-04-27  7:14 [dpdk-dev] [PATCH 0/3] fix i40e bug for flow filter Wei Zhao
  2020-04-27  7:14 ` [dpdk-dev] [PATCH 1/3] net/i40e: remove ARP type check for FDIR filter Wei Zhao
@ 2020-04-27  7:14 ` Wei Zhao
  2020-04-27  7:15 ` [dpdk-dev] [PATCH 3/3] net/i40e: remove teardown when flush FDIR filter Wei Zhao
  2020-04-28  5:48 ` [dpdk-dev] [PATCH v2 0/3] fix i40e bug for flow filter Wei Zhao
  3 siblings, 0 replies; 32+ messages in thread
From: Wei Zhao @ 2020-04-27  7:14 UTC (permalink / raw)
  To: dev; +Cc: beilei.xing, maxime.leroy, Wei Zhao

Add input set requirement info to i40e doc.

Bugzilla ID: 403
Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
---
 doc/guides/nics/i40e.rst | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/doc/guides/nics/i40e.rst b/doc/guides/nics/i40e.rst
index 416b3904e..ad5f51c38 100644
--- a/doc/guides/nics/i40e.rst
+++ b/doc/guides/nics/i40e.rst
@@ -747,6 +747,13 @@ Use 16 Bytes RX Descriptor Size
 As i40e PMD supports both 16 and 32 bytes RX descriptor sizes, and 16 bytes size can provide helps to high performance of small packets.
 Configuration of ``CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC`` in config files can be changed to use 16 bytes size RX descriptors.
 
+input set requirement of each pctype for FDIR
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Each pctype packet can only have one specific input set for FDIR, for example if you download 2 rte_flow rules of different input set for one specific pctype,
+it is will fail and return the info "Conflict with the first rule's input set", that means the first type of input set conflict with the current one,
+this limitaition is required by hardware.
+
 Example of getting best performance with l3fwd example
 ------------------------------------------------------
 
-- 
2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* [dpdk-dev] [PATCH 3/3] net/i40e: remove teardown when flush FDIR filter
  2020-04-27  7:14 [dpdk-dev] [PATCH 0/3] fix i40e bug for flow filter Wei Zhao
  2020-04-27  7:14 ` [dpdk-dev] [PATCH 1/3] net/i40e: remove ARP type check for FDIR filter Wei Zhao
  2020-04-27  7:14 ` [dpdk-dev] [PATCH 2/3] doc: input set requirement of each pctype for FDIR Wei Zhao
@ 2020-04-27  7:15 ` Wei Zhao
  2020-04-28  1:13   ` Xing, Beilei
  2020-04-28  5:48 ` [dpdk-dev] [PATCH v2 0/3] fix i40e bug for flow filter Wei Zhao
  3 siblings, 1 reply; 32+ messages in thread
From: Wei Zhao @ 2020-04-27  7:15 UTC (permalink / raw)
  To: dev; +Cc: beilei.xing, maxime.leroy, stable, Wei Zhao

When we flush FDIR filter, we can not call i40e_fdir_teardown()
function as it will free vsi used for FDIR, then the vsi->base_queue
will be freed from pf->qp_pool, but vsi->base_queue can only get
once when do dev init in i40e_pf_setup(). If we free it, it will
never be alloc again.

Bugzilla ID: 404
Fixes: 2e67a7fbf3ff ("net/i40e: config flow director automatically")
Cc: stable@dpdk.org

Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
---
 drivers/net/i40e/i40e_flow.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c
index 1533d5abb..65f877866 100644
--- a/drivers/net/i40e/i40e_flow.c
+++ b/drivers/net/i40e/i40e_flow.c
@@ -5145,7 +5145,6 @@ i40e_flow_destroy(struct rte_eth_dev *dev,
 
 		/* If the last flow is destroyed, disable fdir. */
 		if (!ret && TAILQ_EMPTY(&pf->fdir.fdir_list)) {
-			i40e_fdir_teardown(pf);
 			i40e_fdir_rx_proc_enable(dev, 0);
 		}
 		break;
@@ -5343,8 +5342,6 @@ i40e_flow_flush_fdir_filter(struct i40e_pf *pf)
 			pf->fdir.inset_flag[pctype] = 0;
 	}
 
-	i40e_fdir_teardown(pf);
-
 	return ret;
 }
 
-- 
2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* Re: [dpdk-dev] [PATCH 3/3] net/i40e: remove teardown when flush FDIR filter
  2020-04-27  7:15 ` [dpdk-dev] [PATCH 3/3] net/i40e: remove teardown when flush FDIR filter Wei Zhao
@ 2020-04-28  1:13   ` Xing, Beilei
  2020-04-28  1:18     ` Zhao1, Wei
  0 siblings, 1 reply; 32+ messages in thread
From: Xing, Beilei @ 2020-04-28  1:13 UTC (permalink / raw)
  To: Zhao1, Wei, dev; +Cc: maxime.leroy, stable



> -----Original Message-----
> From: Zhao1, Wei <wei.zhao1@intel.com>
> Sent: Monday, April 27, 2020 3:15 PM
> To: dev@dpdk.org
> Cc: Xing, Beilei <beilei.xing@intel.com>; maxime.leroy@6wind.com;
> stable@dpdk.org; Zhao1, Wei <wei.zhao1@intel.com>
> Subject: [PATCH 3/3] net/i40e: remove teardown when flush FDIR filter
> 
> When we flush FDIR filter, we can not call i40e_fdir_teardown() function as it
> will free vsi used for FDIR, then the vsi->base_queue will be freed from pf-
> >qp_pool, but vsi->base_queue can only get once when do dev init in
> i40e_pf_setup(). If we free it, it will never be alloc again.

Then we should teardown fdir in dev_uninit, right?

> 
> Bugzilla ID: 404
> Fixes: 2e67a7fbf3ff ("net/i40e: config flow director automatically")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
> ---
>  drivers/net/i40e/i40e_flow.c | 3 ---
>  1 file changed, 3 deletions(-)
> 
> diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c index
> 1533d5abb..65f877866 100644
> --- a/drivers/net/i40e/i40e_flow.c
> +++ b/drivers/net/i40e/i40e_flow.c
> @@ -5145,7 +5145,6 @@ i40e_flow_destroy(struct rte_eth_dev *dev,
> 
>  		/* If the last flow is destroyed, disable fdir. */
>  		if (!ret && TAILQ_EMPTY(&pf->fdir.fdir_list)) {
> -			i40e_fdir_teardown(pf);
>  			i40e_fdir_rx_proc_enable(dev, 0);
>  		}
>  		break;
> @@ -5343,8 +5342,6 @@ i40e_flow_flush_fdir_filter(struct i40e_pf *pf)
>  			pf->fdir.inset_flag[pctype] = 0;
>  	}
> 
> -	i40e_fdir_teardown(pf);
> -
>  	return ret;
>  }
> 
> --
> 2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* Re: [dpdk-dev] [PATCH 3/3] net/i40e: remove teardown when flush FDIR filter
  2020-04-28  1:13   ` Xing, Beilei
@ 2020-04-28  1:18     ` Zhao1, Wei
  0 siblings, 0 replies; 32+ messages in thread
From: Zhao1, Wei @ 2020-04-28  1:18 UTC (permalink / raw)
  To: Xing, Beilei, dev; +Cc: maxime.leroy, stable



> -----Original Message-----
> From: Xing, Beilei <beilei.xing@intel.com>
> Sent: Tuesday, April 28, 2020 9:13 AM
> To: Zhao1, Wei <wei.zhao1@intel.com>; dev@dpdk.org
> Cc: maxime.leroy@6wind.com; stable@dpdk.org
> Subject: RE: [PATCH 3/3] net/i40e: remove teardown when flush FDIR filter
> 
> 
> 
> > -----Original Message-----
> > From: Zhao1, Wei <wei.zhao1@intel.com>
> > Sent: Monday, April 27, 2020 3:15 PM
> > To: dev@dpdk.org
> > Cc: Xing, Beilei <beilei.xing@intel.com>; maxime.leroy@6wind.com;
> > stable@dpdk.org; Zhao1, Wei <wei.zhao1@intel.com>
> > Subject: [PATCH 3/3] net/i40e: remove teardown when flush FDIR filter
> >
> > When we flush FDIR filter, we can not call i40e_fdir_teardown()
> > function as it will free vsi used for FDIR, then the vsi->base_queue
> > will be freed from pf-
> > >qp_pool, but vsi->base_queue can only get once when do dev init in
> > i40e_pf_setup(). If we free it, it will never be alloc again.
> 
> Then we should teardown fdir in dev_uninit, right?

Yes, dev_close has call teardown function.

> 
> >
> > Bugzilla ID: 404
> > Fixes: 2e67a7fbf3ff ("net/i40e: config flow director automatically")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
> > ---
> >  drivers/net/i40e/i40e_flow.c | 3 ---
> >  1 file changed, 3 deletions(-)
> >
> > diff --git a/drivers/net/i40e/i40e_flow.c
> > b/drivers/net/i40e/i40e_flow.c index
> > 1533d5abb..65f877866 100644
> > --- a/drivers/net/i40e/i40e_flow.c
> > +++ b/drivers/net/i40e/i40e_flow.c
> > @@ -5145,7 +5145,6 @@ i40e_flow_destroy(struct rte_eth_dev *dev,
> >
> >  		/* If the last flow is destroyed, disable fdir. */
> >  		if (!ret && TAILQ_EMPTY(&pf->fdir.fdir_list)) {
> > -			i40e_fdir_teardown(pf);
> >  			i40e_fdir_rx_proc_enable(dev, 0);
> >  		}
> >  		break;
> > @@ -5343,8 +5342,6 @@ i40e_flow_flush_fdir_filter(struct i40e_pf *pf)
> >  			pf->fdir.inset_flag[pctype] = 0;
> >  	}
> >
> > -	i40e_fdir_teardown(pf);
> > -
> >  	return ret;
> >  }
> >
> > --
> > 2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* Re: [dpdk-dev] [PATCH 1/3] net/i40e: remove ARP type check for FDIR filter
  2020-04-27  7:14 ` [dpdk-dev] [PATCH 1/3] net/i40e: remove ARP type check for FDIR filter Wei Zhao
@ 2020-04-28  1:20   ` Xing, Beilei
  2020-04-28  5:39     ` Zhao1, Wei
  0 siblings, 1 reply; 32+ messages in thread
From: Xing, Beilei @ 2020-04-28  1:20 UTC (permalink / raw)
  To: Zhao1, Wei, dev; +Cc: maxime.leroy, stable



> -----Original Message-----
> From: Zhao1, Wei <wei.zhao1@intel.com>
> Sent: Monday, April 27, 2020 3:15 PM
> To: dev@dpdk.org
> Cc: Xing, Beilei <beilei.xing@intel.com>; maxime.leroy@6wind.com;
> stable@dpdk.org; Zhao1, Wei <wei.zhao1@intel.com>
> Subject: [PATCH 1/3] net/i40e: remove ARP type check for FDIR filter
> 
> I have try to enable ARP ethertype for FDIR filter, it work well for ARP for
> FDIR filter, so delete it.

Could you rework the commit log by describing the problem and the root cause? And the title maybe 'fix FDIR issue for ARP packets'
I guess the root cause is: if the ether_type is RTE_ETHER_TYPE_ARP, the PCTYPE parsed during pipeline is I40E_FILTER_PCTYPE_L2_PAYLOAD. Please double check.

> 
> Bugzilla ID: 402
> Fixes: 42044b69c67d ("net/i40e: support input set selection for FDIR")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
> ---
>  drivers/net/i40e/i40e_flow.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c index
> 7e64ae53a..1533d5abb 100644
> --- a/drivers/net/i40e/i40e_flow.c
> +++ b/drivers/net/i40e/i40e_flow.c
> @@ -2666,7 +2666,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev
> *dev,
>  				if (next_type ==
> RTE_FLOW_ITEM_TYPE_VLAN ||
>  				    ether_type == RTE_ETHER_TYPE_IPV4 ||
>  				    ether_type == RTE_ETHER_TYPE_IPV6 ||
> -				    ether_type == RTE_ETHER_TYPE_ARP ||
>  				    ether_type == outer_tpid) {
>  					rte_flow_error_set(error, EINVAL,
> 
> RTE_FLOW_ERROR_TYPE_ITEM,
> @@ -2711,7 +2710,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev
> *dev,
> 
>  				if (ether_type == RTE_ETHER_TYPE_IPV4 ||
>  				    ether_type == RTE_ETHER_TYPE_IPV6 ||
> -				    ether_type == RTE_ETHER_TYPE_ARP ||
>  				    ether_type == outer_tpid) {
>  					rte_flow_error_set(error, EINVAL,
> 
> RTE_FLOW_ERROR_TYPE_ITEM,
> --
> 2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* Re: [dpdk-dev] [PATCH 1/3] net/i40e: remove ARP type check for FDIR filter
  2020-04-28  1:20   ` Xing, Beilei
@ 2020-04-28  5:39     ` Zhao1, Wei
  0 siblings, 0 replies; 32+ messages in thread
From: Zhao1, Wei @ 2020-04-28  5:39 UTC (permalink / raw)
  To: Xing, Beilei, dev; +Cc: maxime.leroy, stable



> -----Original Message-----
> From: Xing, Beilei <beilei.xing@intel.com>
> Sent: Tuesday, April 28, 2020 9:21 AM
> To: Zhao1, Wei <wei.zhao1@intel.com>; dev@dpdk.org
> Cc: maxime.leroy@6wind.com; stable@dpdk.org
> Subject: RE: [PATCH 1/3] net/i40e: remove ARP type check for FDIR filter
> 
> 
> 
> > -----Original Message-----
> > From: Zhao1, Wei <wei.zhao1@intel.com>
> > Sent: Monday, April 27, 2020 3:15 PM
> > To: dev@dpdk.org
> > Cc: Xing, Beilei <beilei.xing@intel.com>; maxime.leroy@6wind.com;
> > stable@dpdk.org; Zhao1, Wei <wei.zhao1@intel.com>
> > Subject: [PATCH 1/3] net/i40e: remove ARP type check for FDIR filter
> >
> > I have try to enable ARP ethertype for FDIR filter, it work well for
> > ARP for FDIR filter, so delete it.
> 
> Could you rework the commit log by describing the problem and the root cause?
> And the title maybe 'fix FDIR issue for ARP packets'
> I guess the root cause is: if the ether_type is RTE_ETHER_TYPE_ARP, the
> PCTYPE parsed during pipeline is I40E_FILTER_PCTYPE_L2_PAYLOAD. Please
> double check.


After check, this patch can enable FDIR with pctype I40E_FILTER_PCTYPE_L2_PAYLOAD for ARP packet.
Comment will be update.
 
> 
> >
> > Bugzilla ID: 402
> > Fixes: 42044b69c67d ("net/i40e: support input set selection for FDIR")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
> > ---
> >  drivers/net/i40e/i40e_flow.c | 2 --
> >  1 file changed, 2 deletions(-)
> >
> > diff --git a/drivers/net/i40e/i40e_flow.c
> > b/drivers/net/i40e/i40e_flow.c index 7e64ae53a..1533d5abb 100644
> > --- a/drivers/net/i40e/i40e_flow.c
> > +++ b/drivers/net/i40e/i40e_flow.c
> > @@ -2666,7 +2666,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev
> > *dev,
> >  				if (next_type ==
> > RTE_FLOW_ITEM_TYPE_VLAN ||
> >  				    ether_type == RTE_ETHER_TYPE_IPV4 ||
> >  				    ether_type == RTE_ETHER_TYPE_IPV6 ||
> > -				    ether_type == RTE_ETHER_TYPE_ARP ||
> >  				    ether_type == outer_tpid) {
> >  					rte_flow_error_set(error, EINVAL,
> >
> > RTE_FLOW_ERROR_TYPE_ITEM,
> > @@ -2711,7 +2710,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev
> > *dev,
> >
> >  				if (ether_type == RTE_ETHER_TYPE_IPV4 ||
> >  				    ether_type == RTE_ETHER_TYPE_IPV6 ||
> > -				    ether_type == RTE_ETHER_TYPE_ARP ||
> >  				    ether_type == outer_tpid) {
> >  					rte_flow_error_set(error, EINVAL,
> >
> > RTE_FLOW_ERROR_TYPE_ITEM,
> > --
> > 2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* [dpdk-dev] [PATCH v2 0/3] fix i40e bug for flow filter
  2020-04-27  7:14 [dpdk-dev] [PATCH 0/3] fix i40e bug for flow filter Wei Zhao
                   ` (2 preceding siblings ...)
  2020-04-27  7:15 ` [dpdk-dev] [PATCH 3/3] net/i40e: remove teardown when flush FDIR filter Wei Zhao
@ 2020-04-28  5:48 ` Wei Zhao
  2020-04-28  5:48   ` [dpdk-dev] [PATCH v2 1/3] net/i40e: fix FDIR issue for ARP packets Wei Zhao
                     ` (3 more replies)
  3 siblings, 4 replies; 32+ messages in thread
From: Wei Zhao @ 2020-04-28  5:48 UTC (permalink / raw)
  To: dev; +Cc: stable, beilei.xing, maxime.leroy

fix i40e bug for flow filter and add comment in doc. 

v2:
add more comment in git log.

Wei Zhao (3):
  net/i40e: fix FDIR issue for ARP packets
  doc: input set requirement of each pctype for FDIR
  net/i40e: remove teardown when flush FDIR filter

 doc/guides/nics/i40e.rst     | 7 +++++++
 drivers/net/i40e/i40e_flow.c | 5 -----
 2 files changed, 7 insertions(+), 5 deletions(-)

-- 
2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* [dpdk-dev] [PATCH v2 1/3] net/i40e: fix FDIR issue for ARP packets
  2020-04-28  5:48 ` [dpdk-dev] [PATCH v2 0/3] fix i40e bug for flow filter Wei Zhao
@ 2020-04-28  5:48   ` Wei Zhao
  2020-04-28  7:38     ` Xing, Beilei
  2020-04-28  5:48   ` [dpdk-dev] [PATCH v2 2/3] doc: input set requirement of each pctype for FDIR Wei Zhao
                     ` (2 subsequent siblings)
  3 siblings, 1 reply; 32+ messages in thread
From: Wei Zhao @ 2020-04-28  5:48 UTC (permalink / raw)
  To: dev; +Cc: stable, beilei.xing, maxime.leroy, Wei Zhao

This patch can enable FDIR awith ethertype as input set for ARP
packet, it will associate this rule, "flow create 0 ingress pattern
eth type is 0x0806 / end actions mark id 0x86 / rss / end", with
pctype I40E_FILTER_PCTYPE_L2_PAYLOAD for ARP packet rule.
I have tried to enable ARP ethertype for FDIR filter,
it work well for ARP for FDIR filter, so delete the check.

Bugzilla ID: 402
Fixes: 42044b69c67d ("net/i40e: support input set selection for FDIR")
Cc: stable@dpdk.org

Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
---
 drivers/net/i40e/i40e_flow.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c
index 7e64ae53a..1533d5abb 100644
--- a/drivers/net/i40e/i40e_flow.c
+++ b/drivers/net/i40e/i40e_flow.c
@@ -2666,7 +2666,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev,
 				if (next_type == RTE_FLOW_ITEM_TYPE_VLAN ||
 				    ether_type == RTE_ETHER_TYPE_IPV4 ||
 				    ether_type == RTE_ETHER_TYPE_IPV6 ||
-				    ether_type == RTE_ETHER_TYPE_ARP ||
 				    ether_type == outer_tpid) {
 					rte_flow_error_set(error, EINVAL,
 						     RTE_FLOW_ERROR_TYPE_ITEM,
@@ -2711,7 +2710,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev,
 
 				if (ether_type == RTE_ETHER_TYPE_IPV4 ||
 				    ether_type == RTE_ETHER_TYPE_IPV6 ||
-				    ether_type == RTE_ETHER_TYPE_ARP ||
 				    ether_type == outer_tpid) {
 					rte_flow_error_set(error, EINVAL,
 						     RTE_FLOW_ERROR_TYPE_ITEM,
-- 
2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* [dpdk-dev] [PATCH v2 2/3] doc: input set requirement of each pctype for FDIR
  2020-04-28  5:48 ` [dpdk-dev] [PATCH v2 0/3] fix i40e bug for flow filter Wei Zhao
  2020-04-28  5:48   ` [dpdk-dev] [PATCH v2 1/3] net/i40e: fix FDIR issue for ARP packets Wei Zhao
@ 2020-04-28  5:48   ` Wei Zhao
  2020-04-28  5:48   ` [dpdk-dev] [PATCH v2 3/3] net/i40e: remove teardown when flush FDIR filter Wei Zhao
  2020-04-28  7:39   ` [dpdk-dev] [PATCH v3 0/3] fix i40e bug for flow filter Wei Zhao
  3 siblings, 0 replies; 32+ messages in thread
From: Wei Zhao @ 2020-04-28  5:48 UTC (permalink / raw)
  To: dev; +Cc: stable, beilei.xing, maxime.leroy, Wei Zhao

Add input set requirement info to i40e doc.

Bugzilla ID: 403
Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
---
 doc/guides/nics/i40e.rst | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/doc/guides/nics/i40e.rst b/doc/guides/nics/i40e.rst
index 416b3904e..ad5f51c38 100644
--- a/doc/guides/nics/i40e.rst
+++ b/doc/guides/nics/i40e.rst
@@ -747,6 +747,13 @@ Use 16 Bytes RX Descriptor Size
 As i40e PMD supports both 16 and 32 bytes RX descriptor sizes, and 16 bytes size can provide helps to high performance of small packets.
 Configuration of ``CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC`` in config files can be changed to use 16 bytes size RX descriptors.
 
+input set requirement of each pctype for FDIR
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Each pctype packet can only have one specific input set for FDIR, for example if you download 2 rte_flow rules of different input set for one specific pctype,
+it is will fail and return the info "Conflict with the first rule's input set", that means the first type of input set conflict with the current one,
+this limitaition is required by hardware.
+
 Example of getting best performance with l3fwd example
 ------------------------------------------------------
 
-- 
2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* [dpdk-dev] [PATCH v2 3/3] net/i40e: remove teardown when flush FDIR filter
  2020-04-28  5:48 ` [dpdk-dev] [PATCH v2 0/3] fix i40e bug for flow filter Wei Zhao
  2020-04-28  5:48   ` [dpdk-dev] [PATCH v2 1/3] net/i40e: fix FDIR issue for ARP packets Wei Zhao
  2020-04-28  5:48   ` [dpdk-dev] [PATCH v2 2/3] doc: input set requirement of each pctype for FDIR Wei Zhao
@ 2020-04-28  5:48   ` Wei Zhao
  2020-04-28  7:16     ` Xing, Beilei
  2020-04-28  7:39   ` [dpdk-dev] [PATCH v3 0/3] fix i40e bug for flow filter Wei Zhao
  3 siblings, 1 reply; 32+ messages in thread
From: Wei Zhao @ 2020-04-28  5:48 UTC (permalink / raw)
  To: dev; +Cc: stable, beilei.xing, maxime.leroy, Wei Zhao

When we flush FDIR filter, we can not call i40e_fdir_teardown()
function as it will free vsi used for FDIR, then the vsi->base_queue
will be freed from pf->qp_pool, but vsi->base_queue can only get
once when do dev init in i40e_pf_setup(). If we free it, it will
never be alloc again.

Bugzilla ID: 404
Fixes: 2e67a7fbf3ff ("net/i40e: config flow director automatically")
Cc: stable@dpdk.org

Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
---
 drivers/net/i40e/i40e_flow.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c
index 1533d5abb..65f877866 100644
--- a/drivers/net/i40e/i40e_flow.c
+++ b/drivers/net/i40e/i40e_flow.c
@@ -5145,7 +5145,6 @@ i40e_flow_destroy(struct rte_eth_dev *dev,
 
 		/* If the last flow is destroyed, disable fdir. */
 		if (!ret && TAILQ_EMPTY(&pf->fdir.fdir_list)) {
-			i40e_fdir_teardown(pf);
 			i40e_fdir_rx_proc_enable(dev, 0);
 		}
 		break;
@@ -5343,8 +5342,6 @@ i40e_flow_flush_fdir_filter(struct i40e_pf *pf)
 			pf->fdir.inset_flag[pctype] = 0;
 	}
 
-	i40e_fdir_teardown(pf);
-
 	return ret;
 }
 
-- 
2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* Re: [dpdk-dev] [PATCH v2 3/3] net/i40e: remove teardown when flush FDIR filter
  2020-04-28  5:48   ` [dpdk-dev] [PATCH v2 3/3] net/i40e: remove teardown when flush FDIR filter Wei Zhao
@ 2020-04-28  7:16     ` Xing, Beilei
  2020-04-28  7:44       ` Zhao1, Wei
  0 siblings, 1 reply; 32+ messages in thread
From: Xing, Beilei @ 2020-04-28  7:16 UTC (permalink / raw)
  To: Zhao1, Wei, dev; +Cc: stable, maxime.leroy

Didn't address my comment in v1 patch.

> -----Original Message-----
> From: Zhao1, Wei <wei.zhao1@intel.com>
> Sent: Tuesday, April 28, 2020 1:48 PM
> To: dev@dpdk.org
> Cc: stable@dpdk.org; Xing, Beilei <beilei.xing@intel.com>;
> maxime.leroy@6wind.com; Zhao1, Wei <wei.zhao1@intel.com>
> Subject: [PATCH v2 3/3] net/i40e: remove teardown when flush FDIR filter
> 
> When we flush FDIR filter, we can not call i40e_fdir_teardown() function as it
> will free vsi used for FDIR, then the vsi->base_queue will be freed from pf-
> >qp_pool, but vsi->base_queue can only get once when do dev init in
> i40e_pf_setup(). If we free it, it will never be alloc again.
> 
> Bugzilla ID: 404
> Fixes: 2e67a7fbf3ff ("net/i40e: config flow director automatically")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
> ---
>  drivers/net/i40e/i40e_flow.c | 3 ---
>  1 file changed, 3 deletions(-)
> 
> diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c index
> 1533d5abb..65f877866 100644
> --- a/drivers/net/i40e/i40e_flow.c
> +++ b/drivers/net/i40e/i40e_flow.c
> @@ -5145,7 +5145,6 @@ i40e_flow_destroy(struct rte_eth_dev *dev,
> 
>  		/* If the last flow is destroyed, disable fdir. */
>  		if (!ret && TAILQ_EMPTY(&pf->fdir.fdir_list)) {
> -			i40e_fdir_teardown(pf);
>  			i40e_fdir_rx_proc_enable(dev, 0);
>  		}
>  		break;
> @@ -5343,8 +5342,6 @@ i40e_flow_flush_fdir_filter(struct i40e_pf *pf)
>  			pf->fdir.inset_flag[pctype] = 0;
>  	}
> 
> -	i40e_fdir_teardown(pf);
> -
>  	return ret;
>  }
> 
> --
> 2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* Re: [dpdk-dev] [PATCH v2 1/3] net/i40e: fix FDIR issue for ARP packets
  2020-04-28  5:48   ` [dpdk-dev] [PATCH v2 1/3] net/i40e: fix FDIR issue for ARP packets Wei Zhao
@ 2020-04-28  7:38     ` Xing, Beilei
  2020-04-28  7:46       ` Zhao1, Wei
  0 siblings, 1 reply; 32+ messages in thread
From: Xing, Beilei @ 2020-04-28  7:38 UTC (permalink / raw)
  To: Zhao1, Wei, dev; +Cc: stable, maxime.leroy



> -----Original Message-----
> From: Zhao1, Wei <wei.zhao1@intel.com>
> Sent: Tuesday, April 28, 2020 1:48 PM
> To: dev@dpdk.org
> Cc: stable@dpdk.org; Xing, Beilei <beilei.xing@intel.com>;
> maxime.leroy@6wind.com; Zhao1, Wei <wei.zhao1@intel.com>
> Subject: [PATCH v2 1/3] net/i40e: fix FDIR issue for ARP packets
> 
> This patch can enable FDIR awith ethertype as input set for ARP packet, it will
> associate this rule, "flow create 0 ingress pattern eth type is 0x0806 / end
> actions mark id 0x86 / rss / end", with pctype
> I40E_FILTER_PCTYPE_L2_PAYLOAD for ARP packet rule.
> I have tried to enable ARP ethertype for FDIR filter, it work well for ARP for
> FDIR filter, so delete the check.

How about 
'Currently, flow "pattern eth type is 0x0806 / end actions mark id 0x86 / rss / end" can't be created successfully. FDIR parser shouldn't deny RTE_ETHER_TYPE_ARP since ARP packets will be parsed as PCTYPE_L2_PAYLOAD.
This patch fixes the issue.' ?

> 
> Bugzilla ID: 402
> Fixes: 42044b69c67d ("net/i40e: support input set selection for FDIR")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
> ---
>  drivers/net/i40e/i40e_flow.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c index
> 7e64ae53a..1533d5abb 100644
> --- a/drivers/net/i40e/i40e_flow.c
> +++ b/drivers/net/i40e/i40e_flow.c
> @@ -2666,7 +2666,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev
> *dev,
>  				if (next_type ==
> RTE_FLOW_ITEM_TYPE_VLAN ||
>  				    ether_type == RTE_ETHER_TYPE_IPV4 ||
>  				    ether_type == RTE_ETHER_TYPE_IPV6 ||
> -				    ether_type == RTE_ETHER_TYPE_ARP ||
>  				    ether_type == outer_tpid) {
>  					rte_flow_error_set(error, EINVAL,
> 
> RTE_FLOW_ERROR_TYPE_ITEM,
> @@ -2711,7 +2710,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev
> *dev,
> 
>  				if (ether_type == RTE_ETHER_TYPE_IPV4 ||
>  				    ether_type == RTE_ETHER_TYPE_IPV6 ||
> -				    ether_type == RTE_ETHER_TYPE_ARP ||
>  				    ether_type == outer_tpid) {
>  					rte_flow_error_set(error, EINVAL,
> 
> RTE_FLOW_ERROR_TYPE_ITEM,
> --
> 2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* [dpdk-dev] [PATCH v3 0/3] fix i40e bug for flow filter
  2020-04-28  5:48 ` [dpdk-dev] [PATCH v2 0/3] fix i40e bug for flow filter Wei Zhao
                     ` (2 preceding siblings ...)
  2020-04-28  5:48   ` [dpdk-dev] [PATCH v2 3/3] net/i40e: remove teardown when flush FDIR filter Wei Zhao
@ 2020-04-28  7:39   ` Wei Zhao
  2020-04-28  7:39     ` [dpdk-dev] [PATCH v3 1/3] net/i40e: fix FDIR issue for ARP packets Wei Zhao
                       ` (3 more replies)
  3 siblings, 4 replies; 32+ messages in thread
From: Wei Zhao @ 2020-04-28  7:39 UTC (permalink / raw)
  To: dev; +Cc: stable, beilei.xing, maxime.leroy

fix i40e bug for flow filter and add comment in doc. 

v2:
add more comment in git log.

v3:
update git log.

Wei Zhao (3):
  net/i40e: fix FDIR issue for ARP packets
  doc: input set requirement of each pctype for FDIR
  net/i40e: remove teardown when flush FDIR filter

 doc/guides/nics/i40e.rst     | 7 +++++++
 drivers/net/i40e/i40e_flow.c | 5 -----
 2 files changed, 7 insertions(+), 5 deletions(-)

-- 
2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* [dpdk-dev] [PATCH v3 1/3] net/i40e: fix FDIR issue for ARP packets
  2020-04-28  7:39   ` [dpdk-dev] [PATCH v3 0/3] fix i40e bug for flow filter Wei Zhao
@ 2020-04-28  7:39     ` Wei Zhao
  2020-04-28  7:39     ` [dpdk-dev] [PATCH v3 2/3] doc: input set requirement of each pctype for FDIR Wei Zhao
                       ` (2 subsequent siblings)
  3 siblings, 0 replies; 32+ messages in thread
From: Wei Zhao @ 2020-04-28  7:39 UTC (permalink / raw)
  To: dev; +Cc: stable, beilei.xing, maxime.leroy, Wei Zhao

Currently, flow "pattern eth type is 0x0806 / end actions mark id
0x86 / rss / end" can't be created successfully. FDIR parser
shouldn't deny RTE_ETHER_TYPE_ARP since ARP packets will be
parsed as PCTYPE_L2_PAYLOAD. This patch fixes the issue.

Bugzilla ID: 402
Fixes: 42044b69c67d ("net/i40e: support input set selection for FDIR")
Cc: stable@dpdk.org

Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
---
 drivers/net/i40e/i40e_flow.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c
index 7e64ae53a..1533d5abb 100644
--- a/drivers/net/i40e/i40e_flow.c
+++ b/drivers/net/i40e/i40e_flow.c
@@ -2666,7 +2666,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev,
 				if (next_type == RTE_FLOW_ITEM_TYPE_VLAN ||
 				    ether_type == RTE_ETHER_TYPE_IPV4 ||
 				    ether_type == RTE_ETHER_TYPE_IPV6 ||
-				    ether_type == RTE_ETHER_TYPE_ARP ||
 				    ether_type == outer_tpid) {
 					rte_flow_error_set(error, EINVAL,
 						     RTE_FLOW_ERROR_TYPE_ITEM,
@@ -2711,7 +2710,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev,
 
 				if (ether_type == RTE_ETHER_TYPE_IPV4 ||
 				    ether_type == RTE_ETHER_TYPE_IPV6 ||
-				    ether_type == RTE_ETHER_TYPE_ARP ||
 				    ether_type == outer_tpid) {
 					rte_flow_error_set(error, EINVAL,
 						     RTE_FLOW_ERROR_TYPE_ITEM,
-- 
2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* [dpdk-dev] [PATCH v3 2/3] doc: input set requirement of each pctype for FDIR
  2020-04-28  7:39   ` [dpdk-dev] [PATCH v3 0/3] fix i40e bug for flow filter Wei Zhao
  2020-04-28  7:39     ` [dpdk-dev] [PATCH v3 1/3] net/i40e: fix FDIR issue for ARP packets Wei Zhao
@ 2020-04-28  7:39     ` Wei Zhao
  2020-04-28  7:39     ` [dpdk-dev] [PATCH v3 3/3] net/i40e: remove teardown when flush FDIR filter Wei Zhao
  2020-04-29  2:03     ` [dpdk-dev] [PATCH v4 0/3] fix i40e bug for flow filter Wei Zhao
  3 siblings, 0 replies; 32+ messages in thread
From: Wei Zhao @ 2020-04-28  7:39 UTC (permalink / raw)
  To: dev; +Cc: stable, beilei.xing, maxime.leroy, Wei Zhao

Add input set requirement info to i40e doc.

Bugzilla ID: 403
Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
---
 doc/guides/nics/i40e.rst | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/doc/guides/nics/i40e.rst b/doc/guides/nics/i40e.rst
index 416b3904e..ad5f51c38 100644
--- a/doc/guides/nics/i40e.rst
+++ b/doc/guides/nics/i40e.rst
@@ -747,6 +747,13 @@ Use 16 Bytes RX Descriptor Size
 As i40e PMD supports both 16 and 32 bytes RX descriptor sizes, and 16 bytes size can provide helps to high performance of small packets.
 Configuration of ``CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC`` in config files can be changed to use 16 bytes size RX descriptors.
 
+input set requirement of each pctype for FDIR
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Each pctype packet can only have one specific input set for FDIR, for example if you download 2 rte_flow rules of different input set for one specific pctype,
+it is will fail and return the info "Conflict with the first rule's input set", that means the first type of input set conflict with the current one,
+this limitaition is required by hardware.
+
 Example of getting best performance with l3fwd example
 ------------------------------------------------------
 
-- 
2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* [dpdk-dev] [PATCH v3 3/3] net/i40e: remove teardown when flush FDIR filter
  2020-04-28  7:39   ` [dpdk-dev] [PATCH v3 0/3] fix i40e bug for flow filter Wei Zhao
  2020-04-28  7:39     ` [dpdk-dev] [PATCH v3 1/3] net/i40e: fix FDIR issue for ARP packets Wei Zhao
  2020-04-28  7:39     ` [dpdk-dev] [PATCH v3 2/3] doc: input set requirement of each pctype for FDIR Wei Zhao
@ 2020-04-28  7:39     ` Wei Zhao
  2020-04-29  2:03     ` [dpdk-dev] [PATCH v4 0/3] fix i40e bug for flow filter Wei Zhao
  3 siblings, 0 replies; 32+ messages in thread
From: Wei Zhao @ 2020-04-28  7:39 UTC (permalink / raw)
  To: dev; +Cc: stable, beilei.xing, maxime.leroy, Wei Zhao

When we flush FDIR filter, we can not call i40e_fdir_teardown()
function as it will free vsi used for FDIR, then the vsi->base_queue
will be freed from pf->qp_pool, but vsi->base_queue can only get
once when do dev init in i40e_pf_setup(). If we free it, it will
never be alloc again.

Bugzilla ID: 404
Fixes: 2e67a7fbf3ff ("net/i40e: config flow director automatically")
Cc: stable@dpdk.org

Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
---
 drivers/net/i40e/i40e_flow.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c
index 1533d5abb..65f877866 100644
--- a/drivers/net/i40e/i40e_flow.c
+++ b/drivers/net/i40e/i40e_flow.c
@@ -5145,7 +5145,6 @@ i40e_flow_destroy(struct rte_eth_dev *dev,
 
 		/* If the last flow is destroyed, disable fdir. */
 		if (!ret && TAILQ_EMPTY(&pf->fdir.fdir_list)) {
-			i40e_fdir_teardown(pf);
 			i40e_fdir_rx_proc_enable(dev, 0);
 		}
 		break;
@@ -5343,8 +5342,6 @@ i40e_flow_flush_fdir_filter(struct i40e_pf *pf)
 			pf->fdir.inset_flag[pctype] = 0;
 	}
 
-	i40e_fdir_teardown(pf);
-
 	return ret;
 }
 
-- 
2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* Re: [dpdk-dev] [PATCH v2 3/3] net/i40e: remove teardown when flush FDIR filter
  2020-04-28  7:16     ` Xing, Beilei
@ 2020-04-28  7:44       ` Zhao1, Wei
  0 siblings, 0 replies; 32+ messages in thread
From: Zhao1, Wei @ 2020-04-28  7:44 UTC (permalink / raw)
  To: Xing, Beilei, dev; +Cc: stable, maxime.leroy



> -----Original Message-----
> From: Xing, Beilei <beilei.xing@intel.com>
> Sent: Tuesday, April 28, 2020 3:16 PM
> To: Zhao1, Wei <wei.zhao1@intel.com>; dev@dpdk.org
> Cc: stable@dpdk.org; maxime.leroy@6wind.com
> Subject: RE: [PATCH v2 3/3] net/i40e: remove teardown when flush FDIR filter
> 
> Didn't address my comment in v1 patch.

Hi, 
 it has exist in unit.

> 
> > -----Original Message-----
> > From: Zhao1, Wei <wei.zhao1@intel.com>
> > Sent: Tuesday, April 28, 2020 1:48 PM
> > To: dev@dpdk.org
> > Cc: stable@dpdk.org; Xing, Beilei <beilei.xing@intel.com>;
> > maxime.leroy@6wind.com; Zhao1, Wei <wei.zhao1@intel.com>
> > Subject: [PATCH v2 3/3] net/i40e: remove teardown when flush FDIR
> > filter
> >
> > When we flush FDIR filter, we can not call i40e_fdir_teardown()
> > function as it will free vsi used for FDIR, then the vsi->base_queue
> > will be freed from pf-
> > >qp_pool, but vsi->base_queue can only get once when do dev init in
> > i40e_pf_setup(). If we free it, it will never be alloc again.
> >
> > Bugzilla ID: 404
> > Fixes: 2e67a7fbf3ff ("net/i40e: config flow director automatically")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
> > ---
> >  drivers/net/i40e/i40e_flow.c | 3 ---
> >  1 file changed, 3 deletions(-)
> >
> > diff --git a/drivers/net/i40e/i40e_flow.c
> > b/drivers/net/i40e/i40e_flow.c index
> > 1533d5abb..65f877866 100644
> > --- a/drivers/net/i40e/i40e_flow.c
> > +++ b/drivers/net/i40e/i40e_flow.c
> > @@ -5145,7 +5145,6 @@ i40e_flow_destroy(struct rte_eth_dev *dev,
> >
> >  		/* If the last flow is destroyed, disable fdir. */
> >  		if (!ret && TAILQ_EMPTY(&pf->fdir.fdir_list)) {
> > -			i40e_fdir_teardown(pf);
> >  			i40e_fdir_rx_proc_enable(dev, 0);
> >  		}
> >  		break;
> > @@ -5343,8 +5342,6 @@ i40e_flow_flush_fdir_filter(struct i40e_pf *pf)
> >  			pf->fdir.inset_flag[pctype] = 0;
> >  	}
> >
> > -	i40e_fdir_teardown(pf);
> > -
> >  	return ret;
> >  }
> >
> > --
> > 2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* Re: [dpdk-dev] [PATCH v2 1/3] net/i40e: fix FDIR issue for ARP packets
  2020-04-28  7:38     ` Xing, Beilei
@ 2020-04-28  7:46       ` Zhao1, Wei
  0 siblings, 0 replies; 32+ messages in thread
From: Zhao1, Wei @ 2020-04-28  7:46 UTC (permalink / raw)
  To: Xing, Beilei, dev; +Cc: stable, maxime.leroy



> -----Original Message-----
> From: Xing, Beilei <beilei.xing@intel.com>
> Sent: Tuesday, April 28, 2020 3:38 PM
> To: Zhao1, Wei <wei.zhao1@intel.com>; dev@dpdk.org
> Cc: stable@dpdk.org; maxime.leroy@6wind.com
> Subject: RE: [PATCH v2 1/3] net/i40e: fix FDIR issue for ARP packets
> 
> 
> 
> > -----Original Message-----
> > From: Zhao1, Wei <wei.zhao1@intel.com>
> > Sent: Tuesday, April 28, 2020 1:48 PM
> > To: dev@dpdk.org
> > Cc: stable@dpdk.org; Xing, Beilei <beilei.xing@intel.com>;
> > maxime.leroy@6wind.com; Zhao1, Wei <wei.zhao1@intel.com>
> > Subject: [PATCH v2 1/3] net/i40e: fix FDIR issue for ARP packets
> >
> > This patch can enable FDIR awith ethertype as input set for ARP
> > packet, it will associate this rule, "flow create 0 ingress pattern
> > eth type is 0x0806 / end actions mark id 0x86 / rss / end", with
> > pctype I40E_FILTER_PCTYPE_L2_PAYLOAD for ARP packet rule.
> > I have tried to enable ARP ethertype for FDIR filter, it work well for
> > ARP for FDIR filter, so delete the check.
> 
> How about
> 'Currently, flow "pattern eth type is 0x0806 / end actions mark id 0x86 / rss /
> end" can't be created successfully. FDIR parser shouldn't deny
> RTE_ETHER_TYPE_ARP since ARP packets will be parsed as
> PCTYPE_L2_PAYLOAD.
> This patch fixes the issue.' ?

Ok 

> 
> >
> > Bugzilla ID: 402
> > Fixes: 42044b69c67d ("net/i40e: support input set selection for FDIR")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
> > ---
> >  drivers/net/i40e/i40e_flow.c | 2 --
> >  1 file changed, 2 deletions(-)
> >
> > diff --git a/drivers/net/i40e/i40e_flow.c
> > b/drivers/net/i40e/i40e_flow.c index 7e64ae53a..1533d5abb 100644
> > --- a/drivers/net/i40e/i40e_flow.c
> > +++ b/drivers/net/i40e/i40e_flow.c
> > @@ -2666,7 +2666,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev
> > *dev,
> >  				if (next_type ==
> > RTE_FLOW_ITEM_TYPE_VLAN ||
> >  				    ether_type == RTE_ETHER_TYPE_IPV4 ||
> >  				    ether_type == RTE_ETHER_TYPE_IPV6 ||
> > -				    ether_type == RTE_ETHER_TYPE_ARP ||
> >  				    ether_type == outer_tpid) {
> >  					rte_flow_error_set(error, EINVAL,
> >
> > RTE_FLOW_ERROR_TYPE_ITEM,
> > @@ -2711,7 +2710,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev
> > *dev,
> >
> >  				if (ether_type == RTE_ETHER_TYPE_IPV4 ||
> >  				    ether_type == RTE_ETHER_TYPE_IPV6 ||
> > -				    ether_type == RTE_ETHER_TYPE_ARP ||
> >  				    ether_type == outer_tpid) {
> >  					rte_flow_error_set(error, EINVAL,
> >
> > RTE_FLOW_ERROR_TYPE_ITEM,
> > --
> > 2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* [dpdk-dev] [PATCH v4 0/3] fix i40e bug for flow filter
  2020-04-28  7:39   ` [dpdk-dev] [PATCH v3 0/3] fix i40e bug for flow filter Wei Zhao
                       ` (2 preceding siblings ...)
  2020-04-28  7:39     ` [dpdk-dev] [PATCH v3 3/3] net/i40e: remove teardown when flush FDIR filter Wei Zhao
@ 2020-04-29  2:03     ` Wei Zhao
  2020-04-29  2:03       ` [dpdk-dev] [PATCH v4 1/3] net/i40e: fix FDIR issue for ARP packets Wei Zhao
                         ` (3 more replies)
  3 siblings, 4 replies; 32+ messages in thread
From: Wei Zhao @ 2020-04-29  2:03 UTC (permalink / raw)
  To: dev; +Cc: stable, beilei.xing, maxime.leroy

fix i40e bug for flow filter and add comment in doc. 

v2:
add more comment in git log.

v3:
update git log.

v4:
update doc info.

Wei Zhao (3):
  net/i40e: fix FDIR issue for ARP packets
  doc: input set requirement of each pctype for FDIR
  net/i40e: remove teardown when flush FDIR filter

 doc/guides/nics/i40e.rst     | 7 +++++++
 drivers/net/i40e/i40e_flow.c | 5 -----
 2 files changed, 7 insertions(+), 5 deletions(-)

-- 
2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* [dpdk-dev] [PATCH v4 1/3] net/i40e: fix FDIR issue for ARP packets
  2020-04-29  2:03     ` [dpdk-dev] [PATCH v4 0/3] fix i40e bug for flow filter Wei Zhao
@ 2020-04-29  2:03       ` Wei Zhao
  2020-04-29  2:03       ` [dpdk-dev] [PATCH v4 2/3] doc: input set requirement of each pctype for FDIR Wei Zhao
                         ` (2 subsequent siblings)
  3 siblings, 0 replies; 32+ messages in thread
From: Wei Zhao @ 2020-04-29  2:03 UTC (permalink / raw)
  To: dev; +Cc: stable, beilei.xing, maxime.leroy, Wei Zhao

Currently, flow "pattern eth type is 0x0806 / end actions mark id
0x86 / rss / end" can't be created successfully. FDIR parser
shouldn't deny RTE_ETHER_TYPE_ARP since ARP packets will be
parsed as PCTYPE_L2_PAYLOAD. This patch fixes the issue.

Bugzilla ID: 402
Fixes: 42044b69c67d ("net/i40e: support input set selection for FDIR")
Cc: stable@dpdk.org

Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
---
 drivers/net/i40e/i40e_flow.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c
index 7e64ae53a..1533d5abb 100644
--- a/drivers/net/i40e/i40e_flow.c
+++ b/drivers/net/i40e/i40e_flow.c
@@ -2666,7 +2666,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev,
 				if (next_type == RTE_FLOW_ITEM_TYPE_VLAN ||
 				    ether_type == RTE_ETHER_TYPE_IPV4 ||
 				    ether_type == RTE_ETHER_TYPE_IPV6 ||
-				    ether_type == RTE_ETHER_TYPE_ARP ||
 				    ether_type == outer_tpid) {
 					rte_flow_error_set(error, EINVAL,
 						     RTE_FLOW_ERROR_TYPE_ITEM,
@@ -2711,7 +2710,6 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev,
 
 				if (ether_type == RTE_ETHER_TYPE_IPV4 ||
 				    ether_type == RTE_ETHER_TYPE_IPV6 ||
-				    ether_type == RTE_ETHER_TYPE_ARP ||
 				    ether_type == outer_tpid) {
 					rte_flow_error_set(error, EINVAL,
 						     RTE_FLOW_ERROR_TYPE_ITEM,
-- 
2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* [dpdk-dev] [PATCH v4 2/3] doc: input set requirement of each pctype for FDIR
  2020-04-29  2:03     ` [dpdk-dev] [PATCH v4 0/3] fix i40e bug for flow filter Wei Zhao
  2020-04-29  2:03       ` [dpdk-dev] [PATCH v4 1/3] net/i40e: fix FDIR issue for ARP packets Wei Zhao
@ 2020-04-29  2:03       ` Wei Zhao
  2020-04-29 10:35         ` [dpdk-dev] [dpdk-stable] " Ferruh Yigit
  2020-04-29  2:03       ` [dpdk-dev] [PATCH v4 3/3] net/i40e: remove teardown when flush FDIR filter Wei Zhao
  2020-04-29  3:05       ` [dpdk-dev] [PATCH v4 0/3] fix i40e bug for flow filter Xing, Beilei
  3 siblings, 1 reply; 32+ messages in thread
From: Wei Zhao @ 2020-04-29  2:03 UTC (permalink / raw)
  To: dev; +Cc: stable, beilei.xing, maxime.leroy, Wei Zhao

Add input set requirement info to i40e doc.

Bugzilla ID: 403
Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
---
 doc/guides/nics/i40e.rst | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/doc/guides/nics/i40e.rst b/doc/guides/nics/i40e.rst
index 416b3904e..f085a357c 100644
--- a/doc/guides/nics/i40e.rst
+++ b/doc/guides/nics/i40e.rst
@@ -747,6 +747,13 @@ Use 16 Bytes RX Descriptor Size
 As i40e PMD supports both 16 and 32 bytes RX descriptor sizes, and 16 bytes size can provide helps to high performance of small packets.
 Configuration of ``CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC`` in config files can be changed to use 16 bytes size RX descriptors.
 
+input set requirement of each pctype for FDIR
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Each PCTYPE can only have one specific FDIR input set at one time. For example, if creating 2 rte_flow rules with different input set
+for one PCTYPE, it is will fail and return the info "Conflict with the first rule's input set", which means the current rule's input
+set is conflict with the first rule's. Remove the first rule if want to change the input set of the PCTYPE.
+
 Example of getting best performance with l3fwd example
 ------------------------------------------------------
 
-- 
2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* [dpdk-dev] [PATCH v4 3/3] net/i40e: remove teardown when flush FDIR filter
  2020-04-29  2:03     ` [dpdk-dev] [PATCH v4 0/3] fix i40e bug for flow filter Wei Zhao
  2020-04-29  2:03       ` [dpdk-dev] [PATCH v4 1/3] net/i40e: fix FDIR issue for ARP packets Wei Zhao
  2020-04-29  2:03       ` [dpdk-dev] [PATCH v4 2/3] doc: input set requirement of each pctype for FDIR Wei Zhao
@ 2020-04-29  2:03       ` Wei Zhao
  2020-04-29  3:05       ` [dpdk-dev] [PATCH v4 0/3] fix i40e bug for flow filter Xing, Beilei
  3 siblings, 0 replies; 32+ messages in thread
From: Wei Zhao @ 2020-04-29  2:03 UTC (permalink / raw)
  To: dev; +Cc: stable, beilei.xing, maxime.leroy, Wei Zhao

When we flush FDIR filter, we can not call i40e_fdir_teardown()
function as it will free vsi used for FDIR, then the vsi->base_queue
will be freed from pf->qp_pool, but vsi->base_queue can only get
once when do dev init in i40e_pf_setup(). If we free it, it will
never be alloc again.

Bugzilla ID: 404
Fixes: 2e67a7fbf3ff ("net/i40e: config flow director automatically")
Cc: stable@dpdk.org

Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
---
 drivers/net/i40e/i40e_flow.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c
index 1533d5abb..65f877866 100644
--- a/drivers/net/i40e/i40e_flow.c
+++ b/drivers/net/i40e/i40e_flow.c
@@ -5145,7 +5145,6 @@ i40e_flow_destroy(struct rte_eth_dev *dev,
 
 		/* If the last flow is destroyed, disable fdir. */
 		if (!ret && TAILQ_EMPTY(&pf->fdir.fdir_list)) {
-			i40e_fdir_teardown(pf);
 			i40e_fdir_rx_proc_enable(dev, 0);
 		}
 		break;
@@ -5343,8 +5342,6 @@ i40e_flow_flush_fdir_filter(struct i40e_pf *pf)
 			pf->fdir.inset_flag[pctype] = 0;
 	}
 
-	i40e_fdir_teardown(pf);
-
 	return ret;
 }
 
-- 
2.19.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

* Re: [dpdk-dev] [PATCH v4 0/3] fix i40e bug for flow filter
  2020-04-29  2:03     ` [dpdk-dev] [PATCH v4 0/3] fix i40e bug for flow filter Wei Zhao
                         ` (2 preceding siblings ...)
  2020-04-29  2:03       ` [dpdk-dev] [PATCH v4 3/3] net/i40e: remove teardown when flush FDIR filter Wei Zhao
@ 2020-04-29  3:05       ` Xing, Beilei
  2020-04-29  7:17         ` [dpdk-dev] [dpdk-stable] " Ye Xiaolong
  3 siblings, 1 reply; 32+ messages in thread
From: Xing, Beilei @ 2020-04-29  3:05 UTC (permalink / raw)
  To: Zhao1, Wei, dev; +Cc: stable, maxime.leroy



> -----Original Message-----
> From: Zhao1, Wei <wei.zhao1@intel.com>
> Sent: Wednesday, April 29, 2020 10:04 AM
> To: dev@dpdk.org
> Cc: stable@dpdk.org; Xing, Beilei <beilei.xing@intel.com>;
> maxime.leroy@6wind.com
> Subject: [PATCH v4 0/3] fix i40e bug for flow filter
> 
> fix i40e bug for flow filter and add comment in doc.
> 
> v2:
> add more comment in git log.
> 
> v3:
> update git log.
> 
> v4:
> update doc info.
> 
> Wei Zhao (3):
>   net/i40e: fix FDIR issue for ARP packets
>   doc: input set requirement of each pctype for FDIR
>   net/i40e: remove teardown when flush FDIR filter
> 
>  doc/guides/nics/i40e.rst     | 7 +++++++
>  drivers/net/i40e/i40e_flow.c | 5 -----
>  2 files changed, 7 insertions(+), 5 deletions(-)
> 
> --
> 2.19.1

Acked-by: Beilei Xing <beilei.xing@intel.com>

^ permalink raw reply	[flat|nested] 32+ messages in thread

* Re: [dpdk-dev] [dpdk-stable] [PATCH v4 0/3] fix i40e bug for flow filter
  2020-04-29  3:05       ` [dpdk-dev] [PATCH v4 0/3] fix i40e bug for flow filter Xing, Beilei
@ 2020-04-29  7:17         ` Ye Xiaolong
  0 siblings, 0 replies; 32+ messages in thread
From: Ye Xiaolong @ 2020-04-29  7:17 UTC (permalink / raw)
  To: Xing, Beilei; +Cc: Zhao1, Wei, dev, stable, maxime.leroy

On 04/29, Xing, Beilei wrote:
>
>
>> -----Original Message-----
>> From: Zhao1, Wei <wei.zhao1@intel.com>
>> Sent: Wednesday, April 29, 2020 10:04 AM
>> To: dev@dpdk.org
>> Cc: stable@dpdk.org; Xing, Beilei <beilei.xing@intel.com>;
>> maxime.leroy@6wind.com
>> Subject: [PATCH v4 0/3] fix i40e bug for flow filter
>> 
>> fix i40e bug for flow filter and add comment in doc.
>> 
>> v2:
>> add more comment in git log.
>> 
>> v3:
>> update git log.
>> 
>> v4:
>> update doc info.
>> 
>> Wei Zhao (3):
>>   net/i40e: fix FDIR issue for ARP packets
>>   doc: input set requirement of each pctype for FDIR
>>   net/i40e: remove teardown when flush FDIR filter
>> 
>>  doc/guides/nics/i40e.rst     | 7 +++++++
>>  drivers/net/i40e/i40e_flow.c | 5 -----
>>  2 files changed, 7 insertions(+), 5 deletions(-)
>> 
>> --
>> 2.19.1
>
>Acked-by: Beilei Xing <beilei.xing@intel.com>

Applied to dpdk-next-net-intel, Thanks.

^ permalink raw reply	[flat|nested] 32+ messages in thread

* Re: [dpdk-dev] [dpdk-stable] [PATCH v4 2/3] doc: input set requirement of each pctype for FDIR
  2020-04-29  2:03       ` [dpdk-dev] [PATCH v4 2/3] doc: input set requirement of each pctype for FDIR Wei Zhao
@ 2020-04-29 10:35         ` Ferruh Yigit
  2020-04-30  0:52           ` Zhao1, Wei
  0 siblings, 1 reply; 32+ messages in thread
From: Ferruh Yigit @ 2020-04-29 10:35 UTC (permalink / raw)
  To: Wei Zhao, dev; +Cc: stable, beilei.xing, maxime.leroy

On 4/29/2020 3:03 AM, Wei Zhao wrote:
> Add input set requirement info to i40e doc.
> 
> Bugzilla ID: 403

Should this document update backported to the LTS?
If so which LTS versions are in the scope, it is better if you can add a fixes
tag to help us to figure out that.

> Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
> ---
>  doc/guides/nics/i40e.rst | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/doc/guides/nics/i40e.rst b/doc/guides/nics/i40e.rst
> index 416b3904e..f085a357c 100644
> --- a/doc/guides/nics/i40e.rst
> +++ b/doc/guides/nics/i40e.rst
> @@ -747,6 +747,13 @@ Use 16 Bytes RX Descriptor Size
>  As i40e PMD supports both 16 and 32 bytes RX descriptor sizes, and 16 bytes size can provide helps to high performance of small packets.
>  Configuration of ``CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC`` in config files can be changed to use 16 bytes size RX descriptors.
>  
> +input set requirement of each pctype for FDIR
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +Each PCTYPE can only have one specific FDIR input set at one time. For example, if creating 2 rte_flow rules with different input set
> +for one PCTYPE, it is will fail and return the info "Conflict with the first rule's input set", which means the current rule's input
> +set is conflict with the first rule's. Remove the first rule if want to change the input set of the PCTYPE.
> +
>  Example of getting best performance with l3fwd example
>  ------------------------------------------------------
>  
> 


^ permalink raw reply	[flat|nested] 32+ messages in thread

* Re: [dpdk-dev] [dpdk-stable] [PATCH v4 2/3] doc: input set requirement of each pctype for FDIR
  2020-04-29 10:35         ` [dpdk-dev] [dpdk-stable] " Ferruh Yigit
@ 2020-04-30  0:52           ` Zhao1, Wei
  2020-04-30 10:19             ` Ferruh Yigit
  0 siblings, 1 reply; 32+ messages in thread
From: Zhao1, Wei @ 2020-04-30  0:52 UTC (permalink / raw)
  To: Yigit, Ferruh, dev; +Cc: stable, Xing, Beilei, maxime.leroy

Hi, 


> -----Original Message-----
> From: Yigit, Ferruh <ferruh.yigit@intel.com>
> Sent: Wednesday, April 29, 2020 6:35 PM
> To: Zhao1, Wei <wei.zhao1@intel.com>; dev@dpdk.org
> Cc: stable@dpdk.org; Xing, Beilei <beilei.xing@intel.com>;
> maxime.leroy@6wind.com
> Subject: Re: [dpdk-stable] [PATCH v4 2/3] doc: input set requirement of each
> pctype for FDIR
> 
> On 4/29/2020 3:03 AM, Wei Zhao wrote:
> > Add input set requirement info to i40e doc.
> >
> > Bugzilla ID: 403
> 
> Should this document update backported to the LTS?
> If so which LTS versions are in the scope, it is better if you can add a fixes tag to
> help us to figure out that.

Maybe we can use this, it is the latest update for i40 doc.
Btw, this is not a bug although it is report in bug list.

Fixes: 3d91e097a352 ("doc: add feature support matrix link in i40e guide ")

> 
> > Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
> > ---
> >  doc/guides/nics/i40e.rst | 7 +++++++
> >  1 file changed, 7 insertions(+)
> >
> > diff --git a/doc/guides/nics/i40e.rst b/doc/guides/nics/i40e.rst index
> > 416b3904e..f085a357c 100644
> > --- a/doc/guides/nics/i40e.rst
> > +++ b/doc/guides/nics/i40e.rst
> > @@ -747,6 +747,13 @@ Use 16 Bytes RX Descriptor Size  As i40e PMD
> > supports both 16 and 32 bytes RX descriptor sizes, and 16 bytes size can
> provide helps to high performance of small packets.
> >  Configuration of ``CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC`` in config
> files can be changed to use 16 bytes size RX descriptors.
> >
> > +input set requirement of each pctype for FDIR
> > +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > +
> > +Each PCTYPE can only have one specific FDIR input set at one time.
> > +For example, if creating 2 rte_flow rules with different input set
> > +for one PCTYPE, it is will fail and return the info "Conflict with the first rule's
> input set", which means the current rule's input set is conflict with the first
> rule's. Remove the first rule if want to change the input set of the PCTYPE.
> > +
> >  Example of getting best performance with l3fwd example
> >  ------------------------------------------------------
> >
> >


^ permalink raw reply	[flat|nested] 32+ messages in thread

* Re: [dpdk-dev] [dpdk-stable] [PATCH v4 2/3] doc: input set requirement of each pctype for FDIR
  2020-04-30  0:52           ` Zhao1, Wei
@ 2020-04-30 10:19             ` Ferruh Yigit
  2020-05-06  1:05               ` Zhao1, Wei
  0 siblings, 1 reply; 32+ messages in thread
From: Ferruh Yigit @ 2020-04-30 10:19 UTC (permalink / raw)
  To: Zhao1, Wei, dev; +Cc: stable, Xing, Beilei, maxime.leroy, Kevin Traynor

On 4/30/2020 1:52 AM, Zhao1, Wei wrote:
> Hi,
> 
> 
>> -----Original Message-----
>> From: Yigit, Ferruh <ferruh.yigit@intel.com>
>> Sent: Wednesday, April 29, 2020 6:35 PM
>> To: Zhao1, Wei <wei.zhao1@intel.com>; dev@dpdk.org
>> Cc: stable@dpdk.org; Xing, Beilei <beilei.xing@intel.com>;
>> maxime.leroy@6wind.com
>> Subject: Re: [dpdk-stable] [PATCH v4 2/3] doc: input set requirement of each
>> pctype for FDIR
>>
>> On 4/29/2020 3:03 AM, Wei Zhao wrote:
>>> Add input set requirement info to i40e doc.
>>>
>>> Bugzilla ID: 403
>>
>> Should this document update backported to the LTS?
>> If so which LTS versions are in the scope, it is better if you can add a fixes tag to
>> help us to figure out that.
> 
> Maybe we can use this, it is the latest update for i40 doc.
> Btw, this is not a bug although it is report in bug list.
> 
> Fixes: 3d91e097a352 ("doc: add feature support matrix link in i40e guide ")

Hi Wei,

I agree this is not bug, but this documents a limitation for users. And if this
limitation is valid for the stable trees, it make sense to update documentation
for those releases too, so that they can have correct/complete documentation.
I will add the "stable@dpdk.org" tag to request the backport.

But next question is for which stable trees is this limitation valid, it would
be wrong to document a limitation that doesn't have the feature, how a stable
tree maintainer can know if this issue is valid for a specific stable tree or not.
For that we need the commit that introduces the mentioned feature (and the
limitation), I don't think the commit above really is that commit, that is
unrelated doc commit, but we need the commit for code.

If you can provide correct fixes line, I will update it in the next-net.

Thanks,
ferruh


> 
>>
>>> Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
>>> ---
>>>  doc/guides/nics/i40e.rst | 7 +++++++
>>>  1 file changed, 7 insertions(+)
>>>
>>> diff --git a/doc/guides/nics/i40e.rst b/doc/guides/nics/i40e.rst index
>>> 416b3904e..f085a357c 100644
>>> --- a/doc/guides/nics/i40e.rst
>>> +++ b/doc/guides/nics/i40e.rst
>>> @@ -747,6 +747,13 @@ Use 16 Bytes RX Descriptor Size  As i40e PMD
>>> supports both 16 and 32 bytes RX descriptor sizes, and 16 bytes size can
>> provide helps to high performance of small packets.
>>>  Configuration of ``CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC`` in config
>> files can be changed to use 16 bytes size RX descriptors.
>>>
>>> +input set requirement of each pctype for FDIR
>>> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>> +
>>> +Each PCTYPE can only have one specific FDIR input set at one time.
>>> +For example, if creating 2 rte_flow rules with different input set
>>> +for one PCTYPE, it is will fail and return the info "Conflict with the first rule's
>> input set", which means the current rule's input set is conflict with the first
>> rule's. Remove the first rule if want to change the input set of the PCTYPE.
>>> +
>>>  Example of getting best performance with l3fwd example
>>>  ------------------------------------------------------
>>>
>>>
> 


^ permalink raw reply	[flat|nested] 32+ messages in thread

* Re: [dpdk-dev] [dpdk-stable] [PATCH v4 2/3] doc: input set requirement of each pctype for FDIR
  2020-04-30 10:19             ` Ferruh Yigit
@ 2020-05-06  1:05               ` Zhao1, Wei
  2020-05-06  9:29                 ` Ferruh Yigit
  0 siblings, 1 reply; 32+ messages in thread
From: Zhao1, Wei @ 2020-05-06  1:05 UTC (permalink / raw)
  To: Yigit, Ferruh, dev; +Cc: stable, Xing, Beilei, maxime.leroy, Kevin Traynor

HI, Ferruh

	This is the patch enable FDIR for flow filter, so we can use this.

Fixes: 14c66a451ef  ("net/i40e: parse flow director filter ")
Cc: stable@dpdk.org


> -----Original Message-----
> From: Yigit, Ferruh <ferruh.yigit@intel.com>
> Sent: Thursday, April 30, 2020 6:19 PM
> To: Zhao1, Wei <wei.zhao1@intel.com>; dev@dpdk.org
> Cc: stable@dpdk.org; Xing, Beilei <beilei.xing@intel.com>;
> maxime.leroy@6wind.com; Kevin Traynor <ktraynor@redhat.com>
> Subject: Re: [dpdk-stable] [PATCH v4 2/3] doc: input set requirement of each
> pctype for FDIR
> 
> On 4/30/2020 1:52 AM, Zhao1, Wei wrote:
> > Hi,
> >
> >
> >> -----Original Message-----
> >> From: Yigit, Ferruh <ferruh.yigit@intel.com>
> >> Sent: Wednesday, April 29, 2020 6:35 PM
> >> To: Zhao1, Wei <wei.zhao1@intel.com>; dev@dpdk.org
> >> Cc: stable@dpdk.org; Xing, Beilei <beilei.xing@intel.com>;
> >> maxime.leroy@6wind.com
> >> Subject: Re: [dpdk-stable] [PATCH v4 2/3] doc: input set requirement
> >> of each pctype for FDIR
> >>
> >> On 4/29/2020 3:03 AM, Wei Zhao wrote:
> >>> Add input set requirement info to i40e doc.
> >>>
> >>> Bugzilla ID: 403
> >>
> >> Should this document update backported to the LTS?
> >> If so which LTS versions are in the scope, it is better if you can
> >> add a fixes tag to help us to figure out that.
> >
> > Maybe we can use this, it is the latest update for i40 doc.
> > Btw, this is not a bug although it is report in bug list.
> >
> > Fixes: 3d91e097a352 ("doc: add feature support matrix link in i40e
> > guide ")
> 
> Hi Wei,
> 
> I agree this is not bug, but this documents a limitation for users. And if this
> limitation is valid for the stable trees, it make sense to update documentation
> for those releases too, so that they can have correct/complete documentation.
> I will add the "stable@dpdk.org" tag to request the backport.
> 
> But next question is for which stable trees is this limitation valid, it would be
> wrong to document a limitation that doesn't have the feature, how a stable
> tree maintainer can know if this issue is valid for a specific stable tree or not.
> For that we need the commit that introduces the mentioned feature (and the
> limitation), I don't think the commit above really is that commit, that is
> unrelated doc commit, but we need the commit for code.
> 
> If you can provide correct fixes line, I will update it in the next-net.
> 
> Thanks,
> ferruh
> 
> 
> >
> >>
> >>> Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
> >>> ---
> >>>  doc/guides/nics/i40e.rst | 7 +++++++
> >>>  1 file changed, 7 insertions(+)
> >>>
> >>> diff --git a/doc/guides/nics/i40e.rst b/doc/guides/nics/i40e.rst
> >>> index 416b3904e..f085a357c 100644
> >>> --- a/doc/guides/nics/i40e.rst
> >>> +++ b/doc/guides/nics/i40e.rst
> >>> @@ -747,6 +747,13 @@ Use 16 Bytes RX Descriptor Size  As i40e PMD
> >>> supports both 16 and 32 bytes RX descriptor sizes, and 16 bytes size
> >>> can
> >> provide helps to high performance of small packets.
> >>>  Configuration of ``CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC`` in
> >>> config
> >> files can be changed to use 16 bytes size RX descriptors.
> >>>
> >>> +input set requirement of each pctype for FDIR
> >>> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> >>> +
> >>> +Each PCTYPE can only have one specific FDIR input set at one time.
> >>> +For example, if creating 2 rte_flow rules with different input set
> >>> +for one PCTYPE, it is will fail and return the info "Conflict with
> >>> +the first rule's
> >> input set", which means the current rule's input set is conflict with
> >> the first rule's. Remove the first rule if want to change the input set of the
> PCTYPE.
> >>> +
> >>>  Example of getting best performance with l3fwd example
> >>>  ------------------------------------------------------
> >>>
> >>>
> >


^ permalink raw reply	[flat|nested] 32+ messages in thread

* Re: [dpdk-dev] [dpdk-stable] [PATCH v4 2/3] doc: input set requirement of each pctype for FDIR
  2020-05-06  1:05               ` Zhao1, Wei
@ 2020-05-06  9:29                 ` Ferruh Yigit
  2020-05-06  9:32                   ` Zhao1, Wei
  0 siblings, 1 reply; 32+ messages in thread
From: Ferruh Yigit @ 2020-05-06  9:29 UTC (permalink / raw)
  To: Zhao1, Wei, dev; +Cc: stable, Xing, Beilei, maxime.leroy, Kevin Traynor

On 5/6/2020 2:05 AM, Zhao1, Wei wrote:
> HI, Ferruh
> 
> This is the patch enable FDIR for flow filter, so we can use this.
> 
> Fixes: 14c66a451ef  ("net/i40e: parse flow director filter ")
> Cc: stable@dpdk.org

Updated the commit log, thanks.

> 
> 
>> -----Original Message-----
>> From: Yigit, Ferruh <ferruh.yigit@intel.com>
>> Sent: Thursday, April 30, 2020 6:19 PM
>> To: Zhao1, Wei <wei.zhao1@intel.com>; dev@dpdk.org
>> Cc: stable@dpdk.org; Xing, Beilei <beilei.xing@intel.com>;
>> maxime.leroy@6wind.com; Kevin Traynor <ktraynor@redhat.com>
>> Subject: Re: [dpdk-stable] [PATCH v4 2/3] doc: input set requirement of each
>> pctype for FDIR
>>
>> On 4/30/2020 1:52 AM, Zhao1, Wei wrote:
>>> Hi,
>>>
>>>
>>>> -----Original Message-----
>>>> From: Yigit, Ferruh <ferruh.yigit@intel.com>
>>>> Sent: Wednesday, April 29, 2020 6:35 PM
>>>> To: Zhao1, Wei <wei.zhao1@intel.com>; dev@dpdk.org
>>>> Cc: stable@dpdk.org; Xing, Beilei <beilei.xing@intel.com>;
>>>> maxime.leroy@6wind.com
>>>> Subject: Re: [dpdk-stable] [PATCH v4 2/3] doc: input set requirement
>>>> of each pctype for FDIR
>>>>
>>>> On 4/29/2020 3:03 AM, Wei Zhao wrote:
>>>>> Add input set requirement info to i40e doc.
>>>>>
>>>>> Bugzilla ID: 403
>>>>
>>>> Should this document update backported to the LTS?
>>>> If so which LTS versions are in the scope, it is better if you can
>>>> add a fixes tag to help us to figure out that.
>>>
>>> Maybe we can use this, it is the latest update for i40 doc.
>>> Btw, this is not a bug although it is report in bug list.
>>>
>>> Fixes: 3d91e097a352 ("doc: add feature support matrix link in i40e
>>> guide ")
>>
>> Hi Wei,
>>
>> I agree this is not bug, but this documents a limitation for users. And if this
>> limitation is valid for the stable trees, it make sense to update documentation
>> for those releases too, so that they can have correct/complete documentation.
>> I will add the "stable@dpdk.org" tag to request the backport.
>>
>> But next question is for which stable trees is this limitation valid, it would be
>> wrong to document a limitation that doesn't have the feature, how a stable
>> tree maintainer can know if this issue is valid for a specific stable tree or not.
>> For that we need the commit that introduces the mentioned feature (and the
>> limitation), I don't think the commit above really is that commit, that is
>> unrelated doc commit, but we need the commit for code.
>>
>> If you can provide correct fixes line, I will update it in the next-net.
>>
>> Thanks,
>> ferruh
>>
>>
>>>
>>>>
>>>>> Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
>>>>> ---
>>>>>  doc/guides/nics/i40e.rst | 7 +++++++
>>>>>  1 file changed, 7 insertions(+)
>>>>>
>>>>> diff --git a/doc/guides/nics/i40e.rst b/doc/guides/nics/i40e.rst
>>>>> index 416b3904e..f085a357c 100644
>>>>> --- a/doc/guides/nics/i40e.rst
>>>>> +++ b/doc/guides/nics/i40e.rst
>>>>> @@ -747,6 +747,13 @@ Use 16 Bytes RX Descriptor Size  As i40e PMD
>>>>> supports both 16 and 32 bytes RX descriptor sizes, and 16 bytes size
>>>>> can
>>>> provide helps to high performance of small packets.
>>>>>  Configuration of ``CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC`` in
>>>>> config
>>>> files can be changed to use 16 bytes size RX descriptors.
>>>>>
>>>>> +input set requirement of each pctype for FDIR
>>>>> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>>>> +
>>>>> +Each PCTYPE can only have one specific FDIR input set at one time.
>>>>> +For example, if creating 2 rte_flow rules with different input set
>>>>> +for one PCTYPE, it is will fail and return the info "Conflict with
>>>>> +the first rule's
>>>> input set", which means the current rule's input set is conflict with
>>>> the first rule's. Remove the first rule if want to change the input set of the
>> PCTYPE.
>>>>> +
>>>>>  Example of getting best performance with l3fwd example
>>>>>  ------------------------------------------------------
>>>>>
>>>>>
>>>
> 


^ permalink raw reply	[flat|nested] 32+ messages in thread

* Re: [dpdk-dev] [dpdk-stable] [PATCH v4 2/3] doc: input set requirement of each pctype for FDIR
  2020-05-06  9:29                 ` Ferruh Yigit
@ 2020-05-06  9:32                   ` Zhao1, Wei
  0 siblings, 0 replies; 32+ messages in thread
From: Zhao1, Wei @ 2020-05-06  9:32 UTC (permalink / raw)
  To: Yigit, Ferruh, dev; +Cc: stable, Xing, Beilei, maxime.leroy, Kevin Traynor

Thank for your explanation.


> -----Original Message-----
> From: Yigit, Ferruh <ferruh.yigit@intel.com>
> Sent: Wednesday, May 6, 2020 5:29 PM
> To: Zhao1, Wei <wei.zhao1@intel.com>; dev@dpdk.org
> Cc: stable@dpdk.org; Xing, Beilei <beilei.xing@intel.com>;
> maxime.leroy@6wind.com; Kevin Traynor <ktraynor@redhat.com>
> Subject: Re: [dpdk-stable] [PATCH v4 2/3] doc: input set requirement of each
> pctype for FDIR
> 
> On 5/6/2020 2:05 AM, Zhao1, Wei wrote:
> > HI, Ferruh
> >
> > This is the patch enable FDIR for flow filter, so we can use this.
> >
> > Fixes: 14c66a451ef  ("net/i40e: parse flow director filter ")
> > Cc: stable@dpdk.org
> 
> Updated the commit log, thanks.
> 
> >
> >
> >> -----Original Message-----
> >> From: Yigit, Ferruh <ferruh.yigit@intel.com>
> >> Sent: Thursday, April 30, 2020 6:19 PM
> >> To: Zhao1, Wei <wei.zhao1@intel.com>; dev@dpdk.org
> >> Cc: stable@dpdk.org; Xing, Beilei <beilei.xing@intel.com>;
> >> maxime.leroy@6wind.com; Kevin Traynor <ktraynor@redhat.com>
> >> Subject: Re: [dpdk-stable] [PATCH v4 2/3] doc: input set requirement
> >> of each pctype for FDIR
> >>
> >> On 4/30/2020 1:52 AM, Zhao1, Wei wrote:
> >>> Hi,
> >>>
> >>>
> >>>> -----Original Message-----
> >>>> From: Yigit, Ferruh <ferruh.yigit@intel.com>
> >>>> Sent: Wednesday, April 29, 2020 6:35 PM
> >>>> To: Zhao1, Wei <wei.zhao1@intel.com>; dev@dpdk.org
> >>>> Cc: stable@dpdk.org; Xing, Beilei <beilei.xing@intel.com>;
> >>>> maxime.leroy@6wind.com
> >>>> Subject: Re: [dpdk-stable] [PATCH v4 2/3] doc: input set
> >>>> requirement of each pctype for FDIR
> >>>>
> >>>> On 4/29/2020 3:03 AM, Wei Zhao wrote:
> >>>>> Add input set requirement info to i40e doc.
> >>>>>
> >>>>> Bugzilla ID: 403
> >>>>
> >>>> Should this document update backported to the LTS?
> >>>> If so which LTS versions are in the scope, it is better if you can
> >>>> add a fixes tag to help us to figure out that.
> >>>
> >>> Maybe we can use this, it is the latest update for i40 doc.
> >>> Btw, this is not a bug although it is report in bug list.
> >>>
> >>> Fixes: 3d91e097a352 ("doc: add feature support matrix link in i40e
> >>> guide ")
> >>
> >> Hi Wei,
> >>
> >> I agree this is not bug, but this documents a limitation for users.
> >> And if this limitation is valid for the stable trees, it make sense
> >> to update documentation for those releases too, so that they can have
> correct/complete documentation.
> >> I will add the "stable@dpdk.org" tag to request the backport.
> >>
> >> But next question is for which stable trees is this limitation valid,
> >> it would be wrong to document a limitation that doesn't have the
> >> feature, how a stable tree maintainer can know if this issue is valid for a
> specific stable tree or not.
> >> For that we need the commit that introduces the mentioned feature
> >> (and the limitation), I don't think the commit above really is that
> >> commit, that is unrelated doc commit, but we need the commit for code.
> >>
> >> If you can provide correct fixes line, I will update it in the next-net.
> >>
> >> Thanks,
> >> ferruh
> >>
> >>
> >>>
> >>>>
> >>>>> Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
> >>>>> ---
> >>>>>  doc/guides/nics/i40e.rst | 7 +++++++
> >>>>>  1 file changed, 7 insertions(+)
> >>>>>
> >>>>> diff --git a/doc/guides/nics/i40e.rst b/doc/guides/nics/i40e.rst
> >>>>> index 416b3904e..f085a357c 100644
> >>>>> --- a/doc/guides/nics/i40e.rst
> >>>>> +++ b/doc/guides/nics/i40e.rst
> >>>>> @@ -747,6 +747,13 @@ Use 16 Bytes RX Descriptor Size  As i40e
> PMD
> >>>>> supports both 16 and 32 bytes RX descriptor sizes, and 16 bytes
> >>>>> size can
> >>>> provide helps to high performance of small packets.
> >>>>>  Configuration of ``CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC`` in
> >>>>> config
> >>>> files can be changed to use 16 bytes size RX descriptors.
> >>>>>
> >>>>> +input set requirement of each pctype for FDIR
> >>>>> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> >>>>> +
> >>>>> +Each PCTYPE can only have one specific FDIR input set at one time.
> >>>>> +For example, if creating 2 rte_flow rules with different input
> >>>>> +set for one PCTYPE, it is will fail and return the info "Conflict
> >>>>> +with the first rule's
> >>>> input set", which means the current rule's input set is conflict
> >>>> with the first rule's. Remove the first rule if want to change the
> >>>> input set of the
> >> PCTYPE.
> >>>>> +
> >>>>>  Example of getting best performance with l3fwd example
> >>>>>  ------------------------------------------------------
> >>>>>
> >>>>>
> >>>
> >


^ permalink raw reply	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2020-05-06  9:32 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-27  7:14 [dpdk-dev] [PATCH 0/3] fix i40e bug for flow filter Wei Zhao
2020-04-27  7:14 ` [dpdk-dev] [PATCH 1/3] net/i40e: remove ARP type check for FDIR filter Wei Zhao
2020-04-28  1:20   ` Xing, Beilei
2020-04-28  5:39     ` Zhao1, Wei
2020-04-27  7:14 ` [dpdk-dev] [PATCH 2/3] doc: input set requirement of each pctype for FDIR Wei Zhao
2020-04-27  7:15 ` [dpdk-dev] [PATCH 3/3] net/i40e: remove teardown when flush FDIR filter Wei Zhao
2020-04-28  1:13   ` Xing, Beilei
2020-04-28  1:18     ` Zhao1, Wei
2020-04-28  5:48 ` [dpdk-dev] [PATCH v2 0/3] fix i40e bug for flow filter Wei Zhao
2020-04-28  5:48   ` [dpdk-dev] [PATCH v2 1/3] net/i40e: fix FDIR issue for ARP packets Wei Zhao
2020-04-28  7:38     ` Xing, Beilei
2020-04-28  7:46       ` Zhao1, Wei
2020-04-28  5:48   ` [dpdk-dev] [PATCH v2 2/3] doc: input set requirement of each pctype for FDIR Wei Zhao
2020-04-28  5:48   ` [dpdk-dev] [PATCH v2 3/3] net/i40e: remove teardown when flush FDIR filter Wei Zhao
2020-04-28  7:16     ` Xing, Beilei
2020-04-28  7:44       ` Zhao1, Wei
2020-04-28  7:39   ` [dpdk-dev] [PATCH v3 0/3] fix i40e bug for flow filter Wei Zhao
2020-04-28  7:39     ` [dpdk-dev] [PATCH v3 1/3] net/i40e: fix FDIR issue for ARP packets Wei Zhao
2020-04-28  7:39     ` [dpdk-dev] [PATCH v3 2/3] doc: input set requirement of each pctype for FDIR Wei Zhao
2020-04-28  7:39     ` [dpdk-dev] [PATCH v3 3/3] net/i40e: remove teardown when flush FDIR filter Wei Zhao
2020-04-29  2:03     ` [dpdk-dev] [PATCH v4 0/3] fix i40e bug for flow filter Wei Zhao
2020-04-29  2:03       ` [dpdk-dev] [PATCH v4 1/3] net/i40e: fix FDIR issue for ARP packets Wei Zhao
2020-04-29  2:03       ` [dpdk-dev] [PATCH v4 2/3] doc: input set requirement of each pctype for FDIR Wei Zhao
2020-04-29 10:35         ` [dpdk-dev] [dpdk-stable] " Ferruh Yigit
2020-04-30  0:52           ` Zhao1, Wei
2020-04-30 10:19             ` Ferruh Yigit
2020-05-06  1:05               ` Zhao1, Wei
2020-05-06  9:29                 ` Ferruh Yigit
2020-05-06  9:32                   ` Zhao1, Wei
2020-04-29  2:03       ` [dpdk-dev] [PATCH v4 3/3] net/i40e: remove teardown when flush FDIR filter Wei Zhao
2020-04-29  3:05       ` [dpdk-dev] [PATCH v4 0/3] fix i40e bug for flow filter Xing, Beilei
2020-04-29  7:17         ` [dpdk-dev] [dpdk-stable] " Ye Xiaolong

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).