DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [DPDK] net/ice: fix txq mbuf release mode
@ 2021-04-25  9:26 Alvin Zhang
  2021-04-27  2:31 ` Rong, Leyi
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Alvin Zhang @ 2021-04-25  9:26 UTC (permalink / raw)
  To: qi.z.zhang, qiming.yang; +Cc: dev, Alvin Zhang, stable

In some cases, it seems that the txq mbuf vector release mode
is enabled first, and then it is confirmed that the conditions
for using the vector mode are not met.

This patch puts the txq vector mode startup process after the
condition detection.

Fixes: 28f9002ab67f ("net/ice: add Tx AVX512 offload path")
Cc: stable@dpdk.org

Signed-off-by: Alvin Zhang <alvinx.zhang@intel.com>
---
 drivers/net/ice/ice_rxtx.c | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/drivers/net/ice/ice_rxtx.c b/drivers/net/ice/ice_rxtx.c
index 92fbbc1..49abcb2 100644
--- a/drivers/net/ice/ice_rxtx.c
+++ b/drivers/net/ice/ice_rxtx.c
@@ -3303,13 +3303,6 @@
 		if (tx_check_ret >= 0 &&
 		    rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_128) {
 			ad->tx_vec_allowed = true;
-			for (i = 0; i < dev->data->nb_tx_queues; i++) {
-				txq = dev->data->tx_queues[i];
-				if (txq && ice_txq_vec_setup(txq)) {
-					ad->tx_vec_allowed = false;
-					break;
-				}
-			}
 
 			if (rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_512 &&
 			rte_cpu_get_flag_enabled(RTE_CPUFLAG_AVX512F) == 1 &&
@@ -3329,6 +3322,15 @@
 			if (!use_avx512 && tx_check_ret == ICE_VECTOR_OFFLOAD_PATH)
 				ad->tx_vec_allowed = false;
 
+			if (ad->tx_vec_allowed) {
+				for (i = 0; i < dev->data->nb_tx_queues; i++) {
+					txq = dev->data->tx_queues[i];
+					if (txq && ice_txq_vec_setup(txq)) {
+						ad->tx_vec_allowed = false;
+						break;
+					}
+				}
+			}
 		} else {
 			ad->tx_vec_allowed = false;
 		}
-- 
1.8.3.1


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

* Re: [dpdk-dev] [DPDK] net/ice: fix txq mbuf release mode
  2021-04-25  9:26 [dpdk-dev] [DPDK] net/ice: fix txq mbuf release mode Alvin Zhang
@ 2021-04-27  2:31 ` Rong, Leyi
  2021-04-27  3:00   ` Zhang, Qi Z
  2021-04-28 10:03 ` [dpdk-dev] [dpdk-stable] " Ferruh Yigit
  2021-05-08  1:20 ` [dpdk-dev] [PATCH v2] net/ice: fix txq vector path selection Alvin Zhang
  2 siblings, 1 reply; 10+ messages in thread
From: Rong, Leyi @ 2021-04-27  2:31 UTC (permalink / raw)
  To: Zhang, AlvinX, Zhang, Qi Z, Yang, Qiming; +Cc: dev, Zhang, AlvinX, stable


> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Alvin Zhang
> Sent: Sunday, April 25, 2021 5:27 PM
> To: Zhang, Qi Z <qi.z.zhang@intel.com>; Yang, Qiming <qiming.yang@intel.com>
> Cc: dev@dpdk.org; Zhang, AlvinX <alvinx.zhang@intel.com>; stable@dpdk.org
> Subject: [dpdk-dev] [DPDK] net/ice: fix txq mbuf release mode
> 
> In some cases, it seems that the txq mbuf vector release mode is enabled first,
> and then it is confirmed that the conditions for using the vector mode are not
> met.
> 
> This patch puts the txq vector mode startup process after the condition
> detection.
> 
> Fixes: 28f9002ab67f ("net/ice: add Tx AVX512 offload path")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Alvin Zhang <alvinx.zhang@intel.com>
> ---
>  drivers/net/ice/ice_rxtx.c | 16 +++++++++-------
>  1 file changed, 9 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/net/ice/ice_rxtx.c b/drivers/net/ice/ice_rxtx.c index
> 92fbbc1..49abcb2 100644
> --- a/drivers/net/ice/ice_rxtx.c
> +++ b/drivers/net/ice/ice_rxtx.c
> @@ -3303,13 +3303,6 @@
>  		if (tx_check_ret >= 0 &&
>  		    rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_128)
> {
>  			ad->tx_vec_allowed = true;
> -			for (i = 0; i < dev->data->nb_tx_queues; i++) {
> -				txq = dev->data->tx_queues[i];
> -				if (txq && ice_txq_vec_setup(txq)) {
> -					ad->tx_vec_allowed = false;
> -					break;
> -				}
> -			}
> 
>  			if (rte_vect_get_max_simd_bitwidth() >=
> RTE_VECT_SIMD_512 &&
>  			rte_cpu_get_flag_enabled(RTE_CPUFLAG_AVX512F) ==
> 1 && @@ -3329,6 +3322,15 @@
>  			if (!use_avx512 && tx_check_ret ==
> ICE_VECTOR_OFFLOAD_PATH)
>  				ad->tx_vec_allowed = false;
> 
> +			if (ad->tx_vec_allowed) {
> +				for (i = 0; i < dev->data->nb_tx_queues; i++) {
> +					txq = dev->data->tx_queues[i];
> +					if (txq && ice_txq_vec_setup(txq)) {
> +						ad->tx_vec_allowed = false;
> +						break;
> +					}
> +				}
> +			}
>  		} else {
>  			ad->tx_vec_allowed = false;
>  		}
> --
> 1.8.3.1

Acked-by: Leyi Rong <leyi.rong@intel.com>

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

* Re: [dpdk-dev] [DPDK] net/ice: fix txq mbuf release mode
  2021-04-27  2:31 ` Rong, Leyi
@ 2021-04-27  3:00   ` Zhang, Qi Z
  0 siblings, 0 replies; 10+ messages in thread
From: Zhang, Qi Z @ 2021-04-27  3:00 UTC (permalink / raw)
  To: Rong, Leyi, Zhang, AlvinX, Yang, Qiming; +Cc: dev, Zhang, AlvinX, stable



> -----Original Message-----
> From: Rong, Leyi <leyi.rong@intel.com>
> Sent: 2021年4月27日 10:32
> To: Zhang, AlvinX <alvinx.zhang@intel.com>; Zhang, Qi Z
> <qi.z.zhang@intel.com>; Yang, Qiming <qiming.yang@intel.com>
> Cc: dev@dpdk.org; Zhang, AlvinX <alvinx.zhang@intel.com>;
> stable@dpdk.org
> Subject: RE: [dpdk-dev] [DPDK] net/ice: fix txq mbuf release mode
> 
> 
> > -----Original Message-----
> > From: dev <dev-bounces@dpdk.org> On Behalf Of Alvin Zhang
> > Sent: Sunday, April 25, 2021 5:27 PM
> > To: Zhang, Qi Z <qi.z.zhang@intel.com>; Yang, Qiming
> > <qiming.yang@intel.com>
> > Cc: dev@dpdk.org; Zhang, AlvinX <alvinx.zhang@intel.com>;
> > stable@dpdk.org
> > Subject: [dpdk-dev] [DPDK] net/ice: fix txq mbuf release mode
> >
> > In some cases, it seems that the txq mbuf vector release mode is
> > enabled first, and then it is confirmed that the conditions for using
> > the vector mode are not met.
> >
> > This patch puts the txq vector mode startup process after the
> > condition detection.
> >
> > Fixes: 28f9002ab67f ("net/ice: add Tx AVX512 offload path")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Alvin Zhang <alvinx.zhang@intel.com>
> > ---
> >  drivers/net/ice/ice_rxtx.c | 16 +++++++++-------
> >  1 file changed, 9 insertions(+), 7 deletions(-)
> >
> > diff --git a/drivers/net/ice/ice_rxtx.c b/drivers/net/ice/ice_rxtx.c
> > index
> > 92fbbc1..49abcb2 100644
> > --- a/drivers/net/ice/ice_rxtx.c
> > +++ b/drivers/net/ice/ice_rxtx.c
> > @@ -3303,13 +3303,6 @@
> >  if (tx_check_ret >= 0 &&
> >      rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_128) {
> > ad->tx_vec_allowed = true; -for (i = 0; i < dev->data->nb_tx_queues;
> > i++) { -txq = dev->data->tx_queues[i]; -if (txq &&
> > ice_txq_vec_setup(txq)) {
> > -ad->tx_vec_allowed = false;
> > -break;
> > -}
> > -}
> >
> >  if (rte_vect_get_max_simd_bitwidth() >=
> > RTE_VECT_SIMD_512 &&
> >  rte_cpu_get_flag_enabled(RTE_CPUFLAG_AVX512F) ==
> > 1 && @@ -3329,6 +3322,15 @@
> >  if (!use_avx512 && tx_check_ret ==
> > ICE_VECTOR_OFFLOAD_PATH)
> >  ad->tx_vec_allowed = false;
> >
> > +if (ad->tx_vec_allowed) {
> > +for (i = 0; i < dev->data->nb_tx_queues; i++) { txq =
> > +dev->data->tx_queues[i]; if (txq && ice_txq_vec_setup(txq)) {
> > +ad->tx_vec_allowed = false;
> > +break;
> > +}
> > +}
> > +}
> >  } else {
> >  ad->tx_vec_allowed = false;
> >  }
> > --
> > 1.8.3.1
> 
> Acked-by: Leyi Rong <leyi.rong@intel.com>

Applied to dpdk-next-net-intel.

Thanks
Qi


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

* Re: [dpdk-dev] [dpdk-stable] [DPDK] net/ice: fix txq mbuf release mode
  2021-04-25  9:26 [dpdk-dev] [DPDK] net/ice: fix txq mbuf release mode Alvin Zhang
  2021-04-27  2:31 ` Rong, Leyi
@ 2021-04-28 10:03 ` Ferruh Yigit
  2021-05-06  2:37   ` Zhang, AlvinX
  2021-05-08  1:20 ` [dpdk-dev] [PATCH v2] net/ice: fix txq vector path selection Alvin Zhang
  2 siblings, 1 reply; 10+ messages in thread
From: Ferruh Yigit @ 2021-04-28 10:03 UTC (permalink / raw)
  To: Alvin Zhang, qi.z.zhang, qiming.yang; +Cc: dev, stable

On 4/25/2021 10:26 AM, Alvin Zhang wrote:
> In some cases, it seems that the txq mbuf vector release mode
> is enabled first, and then it is confirmed that the conditions
> for using the vector mode are not met.
> 

Hi Alvin,

As far as I understand the impact is failure in the Tx vector patch selection,
can you please update the patch title to reflect it?

Also can you please describe a little more what is "txq mbuf vector release
mode" and what is the root cause for it to be enabled first?

> This patch puts the txq vector mode startup process after the
> condition detection.

What is "txq vector mode startup process"?

> 
> Fixes: 28f9002ab67f ("net/ice: add Tx AVX512 offload path")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Alvin Zhang <alvinx.zhang@intel.com>
> ---
>  drivers/net/ice/ice_rxtx.c | 16 +++++++++-------
>  1 file changed, 9 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/net/ice/ice_rxtx.c b/drivers/net/ice/ice_rxtx.c
> index 92fbbc1..49abcb2 100644
> --- a/drivers/net/ice/ice_rxtx.c
> +++ b/drivers/net/ice/ice_rxtx.c
> @@ -3303,13 +3303,6 @@
>  		if (tx_check_ret >= 0 &&
>  		    rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_128) {
>  			ad->tx_vec_allowed = true;
> -			for (i = 0; i < dev->data->nb_tx_queues; i++) {
> -				txq = dev->data->tx_queues[i];
> -				if (txq && ice_txq_vec_setup(txq)) {
> -					ad->tx_vec_allowed = false;
> -					break;
> -				}
> -			}
>  
>  			if (rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_512 &&
>  			rte_cpu_get_flag_enabled(RTE_CPUFLAG_AVX512F) == 1 &&
> @@ -3329,6 +3322,15 @@
>  			if (!use_avx512 && tx_check_ret == ICE_VECTOR_OFFLOAD_PATH)
>  				ad->tx_vec_allowed = false;
>  
> +			if (ad->tx_vec_allowed) {
> +				for (i = 0; i < dev->data->nb_tx_queues; i++) {
> +					txq = dev->data->tx_queues[i];
> +					if (txq && ice_txq_vec_setup(txq)) {
> +						ad->tx_vec_allowed = false;
> +						break;
> +					}
> +				}
> +			}
>  		} else {
>  			ad->tx_vec_allowed = false;
>  		}
> 


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

* Re: [dpdk-dev] [dpdk-stable] [DPDK] net/ice: fix txq mbuf release mode
  2021-04-28 10:03 ` [dpdk-dev] [dpdk-stable] " Ferruh Yigit
@ 2021-05-06  2:37   ` Zhang, AlvinX
  0 siblings, 0 replies; 10+ messages in thread
From: Zhang, AlvinX @ 2021-05-06  2:37 UTC (permalink / raw)
  To: Yigit, Ferruh, Zhang, Qi Z, Yang, Qiming; +Cc: dev, stable

Hi Ferruh,

Thanks for your advice. I'll update the commit log in V2.
If the following changes are appropriate?

net/ice: fix txq vector path selection

If Tx vector mode is disabled, the txq vector mode should be disabled too.
This patch adds checking of Tx vector mode before enabling txq vector mode.  

> -----Original Message-----
> From: Yigit, Ferruh <ferruh.yigit@intel.com>
> Sent: Wednesday, April 28, 2021 6:03 PM
> To: Zhang, AlvinX <alvinx.zhang@intel.com>; Zhang, Qi Z
> <qi.z.zhang@intel.com>; Yang, Qiming <qiming.yang@intel.com>
> Cc: dev@dpdk.org; stable@dpdk.org
> Subject: Re: [dpdk-stable] [DPDK] net/ice: fix txq mbuf release mode
> 
> On 4/25/2021 10:26 AM, Alvin Zhang wrote:
> > In some cases, it seems that the txq mbuf vector release mode is
> > enabled first, and then it is confirmed that the conditions for using
> > the vector mode are not met.
> >
> 
> Hi Alvin,
> 
> As far as I understand the impact is failure in the Tx vector patch selection, can
> you please update the patch title to reflect it?
> 
> Also can you please describe a little more what is "txq mbuf vector release
> mode" and what is the root cause for it to be enabled first?
> 
> > This patch puts the txq vector mode startup process after the
> > condition detection.
> 
> What is "txq vector mode startup process"?
> 
> >
> > Fixes: 28f9002ab67f ("net/ice: add Tx AVX512 offload path")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Alvin Zhang <alvinx.zhang@intel.com>
> > ---
> >  drivers/net/ice/ice_rxtx.c | 16 +++++++++-------
> >  1 file changed, 9 insertions(+), 7 deletions(-)
> >
> > diff --git a/drivers/net/ice/ice_rxtx.c b/drivers/net/ice/ice_rxtx.c
> > index 92fbbc1..49abcb2 100644
> > --- a/drivers/net/ice/ice_rxtx.c
> > +++ b/drivers/net/ice/ice_rxtx.c
> > @@ -3303,13 +3303,6 @@
> >  		if (tx_check_ret >= 0 &&
> >  		    rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_128) {
> >  			ad->tx_vec_allowed = true;
> > -			for (i = 0; i < dev->data->nb_tx_queues; i++) {
> > -				txq = dev->data->tx_queues[i];
> > -				if (txq && ice_txq_vec_setup(txq)) {
> > -					ad->tx_vec_allowed = false;
> > -					break;
> > -				}
> > -			}
> >
> >  			if (rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_512
> &&
> >  			rte_cpu_get_flag_enabled(RTE_CPUFLAG_AVX512F) == 1 &&
> @@ -3329,6
> > +3322,15 @@
> >  			if (!use_avx512 && tx_check_ret ==
> ICE_VECTOR_OFFLOAD_PATH)
> >  				ad->tx_vec_allowed = false;
> >
> > +			if (ad->tx_vec_allowed) {
> > +				for (i = 0; i < dev->data->nb_tx_queues; i++) {
> > +					txq = dev->data->tx_queues[i];
> > +					if (txq && ice_txq_vec_setup(txq)) {
> > +						ad->tx_vec_allowed = false;
> > +						break;
> > +					}
> > +				}
> > +			}
> >  		} else {
> >  			ad->tx_vec_allowed = false;
> >  		}
> >

Thanks,
Alvin Zhang

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

* [dpdk-dev] [PATCH v2] net/ice: fix txq vector path selection
  2021-04-25  9:26 [dpdk-dev] [DPDK] net/ice: fix txq mbuf release mode Alvin Zhang
  2021-04-27  2:31 ` Rong, Leyi
  2021-04-28 10:03 ` [dpdk-dev] [dpdk-stable] " Ferruh Yigit
@ 2021-05-08  1:20 ` Alvin Zhang
  2021-05-08  2:37   ` Zhang, Qi Z
  2021-05-08  3:11   ` [dpdk-dev] [PATCH v3] " Alvin Zhang
  2 siblings, 2 replies; 10+ messages in thread
From: Alvin Zhang @ 2021-05-08  1:20 UTC (permalink / raw)
  To: qi.z.zhang, ferruh.yigit; +Cc: dev, Alvin Zhang, stable

If Tx vector mode is disabled, the txq vector mode should be
disabled too.

This patch adds checking of Tx vector mode before enabling txq
vector mode.

Fixes: 28f9002ab67f ("net/ice: add Tx AVX512 offload path")
Cc: stable@dpdk.org

Signed-off-by: Alvin Zhang <alvinx.zhang@intel.com>
---

v2: Update commit log.
---
 drivers/net/ice/ice_rxtx.c | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/drivers/net/ice/ice_rxtx.c b/drivers/net/ice/ice_rxtx.c
index 92fbbc1..49abcb2 100644
--- a/drivers/net/ice/ice_rxtx.c
+++ b/drivers/net/ice/ice_rxtx.c
@@ -3303,13 +3303,6 @@
 		if (tx_check_ret >= 0 &&
 		    rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_128) {
 			ad->tx_vec_allowed = true;
-			for (i = 0; i < dev->data->nb_tx_queues; i++) {
-				txq = dev->data->tx_queues[i];
-				if (txq && ice_txq_vec_setup(txq)) {
-					ad->tx_vec_allowed = false;
-					break;
-				}
-			}
 
 			if (rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_512 &&
 			rte_cpu_get_flag_enabled(RTE_CPUFLAG_AVX512F) == 1 &&
@@ -3329,6 +3322,15 @@
 			if (!use_avx512 && tx_check_ret == ICE_VECTOR_OFFLOAD_PATH)
 				ad->tx_vec_allowed = false;
 
+			if (ad->tx_vec_allowed) {
+				for (i = 0; i < dev->data->nb_tx_queues; i++) {
+					txq = dev->data->tx_queues[i];
+					if (txq && ice_txq_vec_setup(txq)) {
+						ad->tx_vec_allowed = false;
+						break;
+					}
+				}
+			}
 		} else {
 			ad->tx_vec_allowed = false;
 		}
-- 
1.8.3.1


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

* Re: [dpdk-dev] [PATCH v2] net/ice: fix txq vector path selection
  2021-05-08  1:20 ` [dpdk-dev] [PATCH v2] net/ice: fix txq vector path selection Alvin Zhang
@ 2021-05-08  2:37   ` Zhang, Qi Z
  2021-05-08  3:10     ` Zhang, AlvinX
  2021-05-08  3:11   ` [dpdk-dev] [PATCH v3] " Alvin Zhang
  1 sibling, 1 reply; 10+ messages in thread
From: Zhang, Qi Z @ 2021-05-08  2:37 UTC (permalink / raw)
  To: Zhang, AlvinX, Yigit, Ferruh; +Cc: dev, stable



> -----Original Message-----
> From: Zhang, AlvinX <alvinx.zhang@intel.com>
> Sent: Saturday, May 8, 2021 9:21 AM
> To: Zhang, Qi Z <qi.z.zhang@intel.com>; Yigit, Ferruh <ferruh.yigit@intel.com>
> Cc: dev@dpdk.org; Zhang, AlvinX <alvinx.zhang@intel.com>; stable@dpdk.org
> Subject: [PATCH v2] net/ice: fix txq vector path selection
> 
> If Tx vector mode is disabled, the txq vector mode should be disabled too.

If vector mode is not allowed for Tx, no need to perform vector related setup for Tx queue

> 
> This patch adds checking of Tx vector mode before enabling txq vector mode.

The patch deferred vector setup for Tx queue to the place that vector mode is confirmed to be allowed.

> 
> Fixes: 28f9002ab67f ("net/ice: add Tx AVX512 offload path")
> Cc: stable@dpdk.org

No need to add Cc stable, if you fix on current release. 

> 
> Signed-off-by: Alvin Zhang <alvinx.zhang@intel.com>
> ---
> 
> v2: Update commit log.
> ---
>  drivers/net/ice/ice_rxtx.c | 16 +++++++++-------
>  1 file changed, 9 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/net/ice/ice_rxtx.c b/drivers/net/ice/ice_rxtx.c index
> 92fbbc1..49abcb2 100644
> --- a/drivers/net/ice/ice_rxtx.c
> +++ b/drivers/net/ice/ice_rxtx.c
> @@ -3303,13 +3303,6 @@
>  		if (tx_check_ret >= 0 &&
>  		    rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_128) {
>  			ad->tx_vec_allowed = true;
> -			for (i = 0; i < dev->data->nb_tx_queues; i++) {
> -				txq = dev->data->tx_queues[i];
> -				if (txq && ice_txq_vec_setup(txq)) {
> -					ad->tx_vec_allowed = false;
> -					break;
> -				}
> -			}
> 
>  			if (rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_512
> &&
>  			rte_cpu_get_flag_enabled(RTE_CPUFLAG_AVX512F) == 1 &&
> @@ -3329,6 +3322,15 @@
>  			if (!use_avx512 && tx_check_ret ==
> ICE_VECTOR_OFFLOAD_PATH)
>  				ad->tx_vec_allowed = false;
> 
> +			if (ad->tx_vec_allowed) {
> +				for (i = 0; i < dev->data->nb_tx_queues; i++) {
> +					txq = dev->data->tx_queues[i];
> +					if (txq && ice_txq_vec_setup(txq)) {
> +						ad->tx_vec_allowed = false;
> +						break;
> +					}
> +				}
> +			}
>  		} else {
>  			ad->tx_vec_allowed = false;
>  		}
> --
> 1.8.3.1


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

* Re: [dpdk-dev] [PATCH v2] net/ice: fix txq vector path selection
  2021-05-08  2:37   ` Zhang, Qi Z
@ 2021-05-08  3:10     ` Zhang, AlvinX
  0 siblings, 0 replies; 10+ messages in thread
From: Zhang, AlvinX @ 2021-05-08  3:10 UTC (permalink / raw)
  To: Zhang, Qi Z, Yigit, Ferruh; +Cc: dev, stable

Thanks Qi,

> -----Original Message-----
> From: Zhang, Qi Z <qi.z.zhang@intel.com>
> Sent: Saturday, May 8, 2021 10:37 AM
> To: Zhang, AlvinX <alvinx.zhang@intel.com>; Yigit, Ferruh
> <ferruh.yigit@intel.com>
> Cc: dev@dpdk.org; stable@dpdk.org
> Subject: RE: [PATCH v2] net/ice: fix txq vector path selection
> 
> 
> > -----Original Message-----
> > From: Zhang, AlvinX <alvinx.zhang@intel.com>
> > Sent: Saturday, May 8, 2021 9:21 AM
> > To: Zhang, Qi Z <qi.z.zhang@intel.com>; Yigit, Ferruh
> > <ferruh.yigit@intel.com>
> > Cc: dev@dpdk.org; Zhang, AlvinX <alvinx.zhang@intel.com>;
> > stable@dpdk.org
> > Subject: [PATCH v2] net/ice: fix txq vector path selection
> >
> > If Tx vector mode is disabled, the txq vector mode should be disabled too.
> 
> If vector mode is not allowed for Tx, no need to perform vector related setup for
> Tx queue
> 
> >
> > This patch adds checking of Tx vector mode before enabling txq vector mode.
> 
> The patch deferred vector setup for Tx queue to the place that vector mode is
> confirmed to be allowed.
> 
> >
> > Fixes: 28f9002ab67f ("net/ice: add Tx AVX512 offload path")
> > Cc: stable@dpdk.org
> 
> No need to add Cc stable, if you fix on current release.
> 

BRs,
Alvin Zhang

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

* [dpdk-dev] [PATCH v3] net/ice: fix txq vector path selection
  2021-05-08  1:20 ` [dpdk-dev] [PATCH v2] net/ice: fix txq vector path selection Alvin Zhang
  2021-05-08  2:37   ` Zhang, Qi Z
@ 2021-05-08  3:11   ` Alvin Zhang
  2021-05-08  5:53     ` Zhang, Qi Z
  1 sibling, 1 reply; 10+ messages in thread
From: Alvin Zhang @ 2021-05-08  3:11 UTC (permalink / raw)
  To: qi.z.zhang, ferruh.yigit; +Cc: dev, Alvin Zhang

If vector mode is not allowed for Tx, no need to perform vector
related setup for Tx queue.

The patch deferred vector setup for Tx queue to the place that
vector mode is confirmed to be allowed.

Fixes: 28f9002ab67f ("net/ice: add Tx AVX512 offload path")

Signed-off-by: Alvin Zhang <alvinx.zhang@intel.com>
---

v2,v3: Update commit log.
---
 drivers/net/ice/ice_rxtx.c | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/drivers/net/ice/ice_rxtx.c b/drivers/net/ice/ice_rxtx.c
index 92fbbc1..49abcb2 100644
--- a/drivers/net/ice/ice_rxtx.c
+++ b/drivers/net/ice/ice_rxtx.c
@@ -3303,13 +3303,6 @@
 		if (tx_check_ret >= 0 &&
 		    rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_128) {
 			ad->tx_vec_allowed = true;
-			for (i = 0; i < dev->data->nb_tx_queues; i++) {
-				txq = dev->data->tx_queues[i];
-				if (txq && ice_txq_vec_setup(txq)) {
-					ad->tx_vec_allowed = false;
-					break;
-				}
-			}
 
 			if (rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_512 &&
 			rte_cpu_get_flag_enabled(RTE_CPUFLAG_AVX512F) == 1 &&
@@ -3329,6 +3322,15 @@
 			if (!use_avx512 && tx_check_ret == ICE_VECTOR_OFFLOAD_PATH)
 				ad->tx_vec_allowed = false;
 
+			if (ad->tx_vec_allowed) {
+				for (i = 0; i < dev->data->nb_tx_queues; i++) {
+					txq = dev->data->tx_queues[i];
+					if (txq && ice_txq_vec_setup(txq)) {
+						ad->tx_vec_allowed = false;
+						break;
+					}
+				}
+			}
 		} else {
 			ad->tx_vec_allowed = false;
 		}
-- 
1.8.3.1


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

* Re: [dpdk-dev] [PATCH v3] net/ice: fix txq vector path selection
  2021-05-08  3:11   ` [dpdk-dev] [PATCH v3] " Alvin Zhang
@ 2021-05-08  5:53     ` Zhang, Qi Z
  0 siblings, 0 replies; 10+ messages in thread
From: Zhang, Qi Z @ 2021-05-08  5:53 UTC (permalink / raw)
  To: Zhang, AlvinX, Yigit, Ferruh; +Cc: dev



> -----Original Message-----
> From: Zhang, AlvinX <alvinx.zhang@intel.com>
> Sent: Saturday, May 8, 2021 11:11 AM
> To: Zhang, Qi Z <qi.z.zhang@intel.com>; Yigit, Ferruh <ferruh.yigit@intel.com>
> Cc: dev@dpdk.org; Zhang, AlvinX <alvinx.zhang@intel.com>
> Subject: [PATCH v3] net/ice: fix txq vector path selection
> 
> If vector mode is not allowed for Tx, no need to perform vector related setup
> for Tx queue.
> 
> The patch deferred vector setup for Tx queue to the place that vector mode is
> confirmed to be allowed.
> 
> Fixes: 28f9002ab67f ("net/ice: add Tx AVX512 offload path")
> 
> Signed-off-by: Alvin Zhang <alvinx.zhang@intel.com>

Acked-by: Qi Zhang <qi.z.zhang@intel.com>

Applied to dpdk-next-net-intel.

Thanks
Qi


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

end of thread, other threads:[~2021-05-08  5:53 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-25  9:26 [dpdk-dev] [DPDK] net/ice: fix txq mbuf release mode Alvin Zhang
2021-04-27  2:31 ` Rong, Leyi
2021-04-27  3:00   ` Zhang, Qi Z
2021-04-28 10:03 ` [dpdk-dev] [dpdk-stable] " Ferruh Yigit
2021-05-06  2:37   ` Zhang, AlvinX
2021-05-08  1:20 ` [dpdk-dev] [PATCH v2] net/ice: fix txq vector path selection Alvin Zhang
2021-05-08  2:37   ` Zhang, Qi Z
2021-05-08  3:10     ` Zhang, AlvinX
2021-05-08  3:11   ` [dpdk-dev] [PATCH v3] " Alvin Zhang
2021-05-08  5:53     ` Zhang, Qi Z

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).