DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH v1] net/i40e: fix set rss hash function invalid
@ 2021-06-11  1:35 Steve Yang
  2021-06-11  1:45 ` Xing, Beilei
  2021-06-11  6:54 ` [dpdk-dev] [PATCH v2] " Steve Yang
  0 siblings, 2 replies; 7+ messages in thread
From: Steve Yang @ 2021-06-11  1:35 UTC (permalink / raw)
  To: dev; +Cc: beilei.xing, Steve Yang

i40e can support following rss hash function types: default (toeplitz),
symmetric toeplitz, and simple_xor. However, when filter engine parses
pattern action, it only supports symmetric toeplitz & default (toeplitz).

Delete the hash function limitation when parsing pattern action.

Signed-off-by: Steve Yang <stevex.yang@intel.com>
---
 drivers/net/i40e/i40e_hash.c | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/drivers/net/i40e/i40e_hash.c b/drivers/net/i40e/i40e_hash.c
index b1cb24f437..bd734722d9 100644
--- a/drivers/net/i40e/i40e_hash.c
+++ b/drivers/net/i40e/i40e_hash.c
@@ -1107,11 +1107,6 @@ i40e_hash_parse_pattern_act(const struct rte_eth_dev *dev,
 
 	if (rss_act->func == RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ)
 		rss_conf->symmetric_enable = true;
-	else if (rss_act->func != RTE_ETH_HASH_FUNCTION_DEFAULT)
-		return rte_flow_error_set(error, -EINVAL,
-					  RTE_FLOW_ERROR_TYPE_ACTION_CONF,
-					  NULL,
-					  "Only symmetric TOEPLITZ supported when pattern specified");
 
 	if (!i40e_hash_validate_rss_types(rss_act->types))
 		return rte_flow_error_set(error, EINVAL,
-- 
2.27.0


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

* Re: [dpdk-dev] [PATCH v1] net/i40e: fix set rss hash function invalid
  2021-06-11  1:35 [dpdk-dev] [PATCH v1] net/i40e: fix set rss hash function invalid Steve Yang
@ 2021-06-11  1:45 ` Xing, Beilei
  2021-06-11  6:54 ` [dpdk-dev] [PATCH v2] " Steve Yang
  1 sibling, 0 replies; 7+ messages in thread
From: Xing, Beilei @ 2021-06-11  1:45 UTC (permalink / raw)
  To: Yang, SteveX, dev



> -----Original Message-----
> From: Yang, SteveX <stevex.yang@intel.com>
> Sent: Friday, June 11, 2021 9:35 AM
> To: dev@dpdk.org
> Cc: Xing, Beilei <beilei.xing@intel.com>; Yang, SteveX
> <stevex.yang@intel.com>
> Subject: [PATCH v1] net/i40e: fix set rss hash function invalid
> 
> i40e can support following rss hash function types: default (toeplitz),
> symmetric toeplitz, and simple_xor. However, when filter engine parses
> pattern action, it only supports symmetric toeplitz & default (toeplitz).
> 
> Delete the hash function limitation when parsing pattern action.
Missed fix line.

> 
> Signed-off-by: Steve Yang <stevex.yang@intel.com>
> ---
>  drivers/net/i40e/i40e_hash.c | 5 -----
>  1 file changed, 5 deletions(-)
> 
> diff --git a/drivers/net/i40e/i40e_hash.c b/drivers/net/i40e/i40e_hash.c
> index b1cb24f437..bd734722d9 100644
> --- a/drivers/net/i40e/i40e_hash.c
> +++ b/drivers/net/i40e/i40e_hash.c
> @@ -1107,11 +1107,6 @@ i40e_hash_parse_pattern_act(const struct
> rte_eth_dev *dev,
> 
>  	if (rss_act->func ==
> RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ)
>  		rss_conf->symmetric_enable = true;
> -	else if (rss_act->func != RTE_ETH_HASH_FUNCTION_DEFAULT)
> -		return rte_flow_error_set(error, -EINVAL,
> -
> RTE_FLOW_ERROR_TYPE_ACTION_CONF,
> -					  NULL,
> -					  "Only symmetric TOEPLITZ
> supported when pattern specified");
Do we any other error info if rss_act->func != default or  rss_act->func != simple_xor?

> 
>  	if (!i40e_hash_validate_rss_types(rss_act->types))
>  		return rte_flow_error_set(error, EINVAL,
> --
> 2.27.0


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

* [dpdk-dev] [PATCH v2] net/i40e: fix set rss hash function invalid
  2021-06-11  1:35 [dpdk-dev] [PATCH v1] net/i40e: fix set rss hash function invalid Steve Yang
  2021-06-11  1:45 ` Xing, Beilei
@ 2021-06-11  6:54 ` Steve Yang
  2021-06-21  7:14   ` Xing, Beilei
  2021-06-21  8:03   ` [dpdk-dev] [PATCH v3] " Steve Yang
  1 sibling, 2 replies; 7+ messages in thread
From: Steve Yang @ 2021-06-11  6:54 UTC (permalink / raw)
  To: dev; +Cc: beilei.xing, Steve Yang

i40e can support following rss hash function types: default/toeplitz,
symmetric toeplitz, and simple_xor. However, when filter engine parses
pattern action, it only supports symmetric toeplitz & default.

Add simple_xor and toeplitz hash functions support when parsing pattern
action.

Fixes: ef4c16fd9148 ("net/i40e: refactor RSS flow")

Signed-off-by: Steve Yang <stevex.yang@intel.com>
---
v2:
 - add the fix line.
 - support simple_xor and toeplitz hash functions explicitly.

 drivers/net/i40e/i40e_hash.c | 20 ++++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)

diff --git a/drivers/net/i40e/i40e_hash.c b/drivers/net/i40e/i40e_hash.c
index b1cb24f437..0cef21c88f 100644
--- a/drivers/net/i40e/i40e_hash.c
+++ b/drivers/net/i40e/i40e_hash.c
@@ -1105,13 +1105,21 @@ i40e_hash_parse_pattern_act(const struct rte_eth_dev *dev,
 					  NULL,
 					  "RSS Queues not supported when pattern specified");
 
-	if (rss_act->func == RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ)
+	switch (rss_act->func) {
+	case RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ:
 		rss_conf->symmetric_enable = true;
-	else if (rss_act->func != RTE_ETH_HASH_FUNCTION_DEFAULT)
-		return rte_flow_error_set(error, -EINVAL,
-					  RTE_FLOW_ERROR_TYPE_ACTION_CONF,
-					  NULL,
-					  "Only symmetric TOEPLITZ supported when pattern specified");
+		break;
+	case RTE_ETH_HASH_FUNCTION_DEFAULT:
+	case RTE_ETH_HASH_FUNCTION_TOEPLITZ:
+	case RTE_ETH_HASH_FUNCTION_SIMPLE_XOR:
+		break;
+	default:
+		return rte_flow_error_set(error, EINVAL,
+				RTE_FLOW_ERROR_TYPE_ACTION_CONF,
+				NULL,
+				"RSS hash function not supported "
+				"when pattern specified");
+	}
 
 	if (!i40e_hash_validate_rss_types(rss_act->types))
 		return rte_flow_error_set(error, EINVAL,
-- 
2.27.0


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

* Re: [dpdk-dev] [PATCH v2] net/i40e: fix set rss hash function invalid
  2021-06-11  6:54 ` [dpdk-dev] [PATCH v2] " Steve Yang
@ 2021-06-21  7:14   ` Xing, Beilei
  2021-06-21  8:03   ` [dpdk-dev] [PATCH v3] " Steve Yang
  1 sibling, 0 replies; 7+ messages in thread
From: Xing, Beilei @ 2021-06-21  7:14 UTC (permalink / raw)
  To: Yang, SteveX, dev



> -----Original Message-----
> From: Yang, SteveX <stevex.yang@intel.com>
> Sent: Friday, June 11, 2021 2:55 PM
> To: dev@dpdk.org
> Cc: Xing, Beilei <beilei.xing@intel.com>; Yang, SteveX
> <stevex.yang@intel.com>
> Subject: [PATCH v2] net/i40e: fix set rss hash function invalid
> 
> i40e can support following rss hash function types: default/toeplitz,
> symmetric toeplitz, and simple_xor. However, when filter engine parses
> pattern action, it only supports symmetric toeplitz & default.
> 
> Add simple_xor and toeplitz hash functions support when parsing pattern
> action.
> 
> Fixes: ef4c16fd9148 ("net/i40e: refactor RSS flow")
Why didn't CC stable?

> 
> Signed-off-by: Steve Yang <stevex.yang@intel.com>
> ---
> v2:
>  - add the fix line.
>  - support simple_xor and toeplitz hash functions explicitly.
> 
>  drivers/net/i40e/i40e_hash.c | 20 ++++++++++++++------
>  1 file changed, 14 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/net/i40e/i40e_hash.c b/drivers/net/i40e/i40e_hash.c
> index b1cb24f437..0cef21c88f 100644
> --- a/drivers/net/i40e/i40e_hash.c
> +++ b/drivers/net/i40e/i40e_hash.c
> @@ -1105,13 +1105,21 @@ i40e_hash_parse_pattern_act(const struct
> rte_eth_dev *dev,
>  					  NULL,
>  					  "RSS Queues not supported when
> pattern specified");
> 
> -	if (rss_act->func ==
> RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ)
> +	switch (rss_act->func) {
> +	case RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ:
>  		rss_conf->symmetric_enable = true;
> -	else if (rss_act->func != RTE_ETH_HASH_FUNCTION_DEFAULT)
> -		return rte_flow_error_set(error, -EINVAL,
> -
> RTE_FLOW_ERROR_TYPE_ACTION_CONF,
> -					  NULL,
> -					  "Only symmetric TOEPLITZ
> supported when pattern specified");
> +		break;
> +	case RTE_ETH_HASH_FUNCTION_DEFAULT:
> +	case RTE_ETH_HASH_FUNCTION_TOEPLITZ:
> +	case RTE_ETH_HASH_FUNCTION_SIMPLE_XOR:
> +		break;
> +	default:
> +		return rte_flow_error_set(error, EINVAL,
> +				RTE_FLOW_ERROR_TYPE_ACTION_CONF,
> +				NULL,
> +				"RSS hash function not supported "
> +				"when pattern specified");
> +	}
> 
>  	if (!i40e_hash_validate_rss_types(rss_act->types))
>  		return rte_flow_error_set(error, EINVAL,
> --
> 2.27.0


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

* [dpdk-dev] [PATCH v3] net/i40e: fix set rss hash function invalid
  2021-06-11  6:54 ` [dpdk-dev] [PATCH v2] " Steve Yang
  2021-06-21  7:14   ` Xing, Beilei
@ 2021-06-21  8:03   ` Steve Yang
  2021-06-21  8:19     ` Xing, Beilei
  1 sibling, 1 reply; 7+ messages in thread
From: Steve Yang @ 2021-06-21  8:03 UTC (permalink / raw)
  To: dev; +Cc: beilei.xing, Steve Yang, stable

i40e can support following rss hash function types: default/toeplitz,
symmetric toeplitz, and simple_xor. However, when filter engine parses
pattern action, it only supports symmetric toeplitz & default.

Add simple_xor and toeplitz hash functions support when parsing pattern
action.

Fixes: ef4c16fd9148 ("net/i40e: refactor RSS flow")
Cc: stable@dpdk.org

Signed-off-by: Steve Yang <stevex.yang@intel.com>
---
v3:
 - add Cc stable line.
v2:
 - add the fix line.
 - support simple_xor and toeplitz hash functions explicitly.

 drivers/net/i40e/i40e_hash.c | 20 ++++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)

diff --git a/drivers/net/i40e/i40e_hash.c b/drivers/net/i40e/i40e_hash.c
index b1cb24f437..0cef21c88f 100644
--- a/drivers/net/i40e/i40e_hash.c
+++ b/drivers/net/i40e/i40e_hash.c
@@ -1105,13 +1105,21 @@ i40e_hash_parse_pattern_act(const struct rte_eth_dev *dev,
 					  NULL,
 					  "RSS Queues not supported when pattern specified");
 
-	if (rss_act->func == RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ)
+	switch (rss_act->func) {
+	case RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ:
 		rss_conf->symmetric_enable = true;
-	else if (rss_act->func != RTE_ETH_HASH_FUNCTION_DEFAULT)
-		return rte_flow_error_set(error, -EINVAL,
-					  RTE_FLOW_ERROR_TYPE_ACTION_CONF,
-					  NULL,
-					  "Only symmetric TOEPLITZ supported when pattern specified");
+		break;
+	case RTE_ETH_HASH_FUNCTION_DEFAULT:
+	case RTE_ETH_HASH_FUNCTION_TOEPLITZ:
+	case RTE_ETH_HASH_FUNCTION_SIMPLE_XOR:
+		break;
+	default:
+		return rte_flow_error_set(error, EINVAL,
+				RTE_FLOW_ERROR_TYPE_ACTION_CONF,
+				NULL,
+				"RSS hash function not supported "
+				"when pattern specified");
+	}
 
 	if (!i40e_hash_validate_rss_types(rss_act->types))
 		return rte_flow_error_set(error, EINVAL,
-- 
2.27.0


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

* Re: [dpdk-dev] [PATCH v3] net/i40e: fix set rss hash function invalid
  2021-06-21  8:03   ` [dpdk-dev] [PATCH v3] " Steve Yang
@ 2021-06-21  8:19     ` Xing, Beilei
  2021-06-21  8:30       ` Zhang, Qi Z
  0 siblings, 1 reply; 7+ messages in thread
From: Xing, Beilei @ 2021-06-21  8:19 UTC (permalink / raw)
  To: Yang, SteveX, dev; +Cc: Yang, SteveX, stable



> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Steve Yang
> Sent: Monday, June 21, 2021 4:04 PM
> To: dev@dpdk.org
> Cc: Xing, Beilei <beilei.xing@intel.com>; Yang, SteveX
> <stevex.yang@intel.com>; stable@dpdk.org
> Subject: [dpdk-dev] [PATCH v3] net/i40e: fix set rss hash function invalid
> 
> i40e can support following rss hash function types: default/toeplitz,
> symmetric toeplitz, and simple_xor. However, when filter engine parses
> pattern action, it only supports symmetric toeplitz & default.
> 
> Add simple_xor and toeplitz hash functions support when parsing pattern
> action.
> 
> Fixes: ef4c16fd9148 ("net/i40e: refactor RSS flow")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Steve Yang <stevex.yang@intel.com>
> ---
> v3:
>  - add Cc stable line.
> v2:
>  - add the fix line.
>  - support simple_xor and toeplitz hash functions explicitly.
> 
>  drivers/net/i40e/i40e_hash.c | 20 ++++++++++++++------
>  1 file changed, 14 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/net/i40e/i40e_hash.c b/drivers/net/i40e/i40e_hash.c
> index b1cb24f437..0cef21c88f 100644
> --- a/drivers/net/i40e/i40e_hash.c
> +++ b/drivers/net/i40e/i40e_hash.c
> @@ -1105,13 +1105,21 @@ i40e_hash_parse_pattern_act(const struct
> rte_eth_dev *dev,
>  					  NULL,
>  					  "RSS Queues not supported when
> pattern specified");
> 
> -	if (rss_act->func ==
> RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ)
> +	switch (rss_act->func) {
> +	case RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ:
>  		rss_conf->symmetric_enable = true;
> -	else if (rss_act->func != RTE_ETH_HASH_FUNCTION_DEFAULT)
> -		return rte_flow_error_set(error, -EINVAL,
> -
> RTE_FLOW_ERROR_TYPE_ACTION_CONF,
> -					  NULL,
> -					  "Only symmetric TOEPLITZ
> supported when pattern specified");
> +		break;
> +	case RTE_ETH_HASH_FUNCTION_DEFAULT:
> +	case RTE_ETH_HASH_FUNCTION_TOEPLITZ:
> +	case RTE_ETH_HASH_FUNCTION_SIMPLE_XOR:
> +		break;
> +	default:
> +		return rte_flow_error_set(error, EINVAL,
> +				RTE_FLOW_ERROR_TYPE_ACTION_CONF,
> +				NULL,
> +				"RSS hash function not supported "
> +				"when pattern specified");
> +	}
> 
>  	if (!i40e_hash_validate_rss_types(rss_act->types))
>  		return rte_flow_error_set(error, EINVAL,
> --
> 2.27.0

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


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

* Re: [dpdk-dev] [PATCH v3] net/i40e: fix set rss hash function invalid
  2021-06-21  8:19     ` Xing, Beilei
@ 2021-06-21  8:30       ` Zhang, Qi Z
  0 siblings, 0 replies; 7+ messages in thread
From: Zhang, Qi Z @ 2021-06-21  8:30 UTC (permalink / raw)
  To: Xing, Beilei, Yang, SteveX, dev; +Cc: Yang, SteveX, stable



> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Xing, Beilei
> Sent: Monday, June 21, 2021 4:19 PM
> To: Yang, SteveX <stevex.yang@intel.com>; dev@dpdk.org
> Cc: Yang, SteveX <stevex.yang@intel.com>; stable@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH v3] net/i40e: fix set rss hash function invalid
> 
> 
> 
> > -----Original Message-----
> > From: dev <dev-bounces@dpdk.org> On Behalf Of Steve Yang
> > Sent: Monday, June 21, 2021 4:04 PM
> > To: dev@dpdk.org
> > Cc: Xing, Beilei <beilei.xing@intel.com>; Yang, SteveX
> > <stevex.yang@intel.com>; stable@dpdk.org
> > Subject: [dpdk-dev] [PATCH v3] net/i40e: fix set rss hash function
> > invalid
> >
> > i40e can support following rss hash function types: default/toeplitz,
> > symmetric toeplitz, and simple_xor. However, when filter engine parses
> > pattern action, it only supports symmetric toeplitz & default.
> >
> > Add simple_xor and toeplitz hash functions support when parsing
> > pattern action.
> >
> > Fixes: ef4c16fd9148 ("net/i40e: refactor RSS flow")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Steve Yang <stevex.yang@intel.com>
> > ---
> > v3:
> >  - add Cc stable line.
> > v2:
> >  - add the fix line.
> >  - support simple_xor and toeplitz hash functions explicitly.
> >
> >  drivers/net/i40e/i40e_hash.c | 20 ++++++++++++++------
> >  1 file changed, 14 insertions(+), 6 deletions(-)
> >
> > diff --git a/drivers/net/i40e/i40e_hash.c
> > b/drivers/net/i40e/i40e_hash.c index b1cb24f437..0cef21c88f 100644
> > --- a/drivers/net/i40e/i40e_hash.c
> > +++ b/drivers/net/i40e/i40e_hash.c
> > @@ -1105,13 +1105,21 @@ i40e_hash_parse_pattern_act(const struct
> > rte_eth_dev *dev,
> >  					  NULL,
> >  					  "RSS Queues not supported when pattern
> specified");
> >
> > -	if (rss_act->func ==
> > RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ)
> > +	switch (rss_act->func) {
> > +	case RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ:
> >  		rss_conf->symmetric_enable = true;
> > -	else if (rss_act->func != RTE_ETH_HASH_FUNCTION_DEFAULT)
> > -		return rte_flow_error_set(error, -EINVAL,
> > -
> > RTE_FLOW_ERROR_TYPE_ACTION_CONF,
> > -					  NULL,
> > -					  "Only symmetric TOEPLITZ
> > supported when pattern specified");
> > +		break;
> > +	case RTE_ETH_HASH_FUNCTION_DEFAULT:
> > +	case RTE_ETH_HASH_FUNCTION_TOEPLITZ:
> > +	case RTE_ETH_HASH_FUNCTION_SIMPLE_XOR:
> > +		break;
> > +	default:
> > +		return rte_flow_error_set(error, EINVAL,
> > +				RTE_FLOW_ERROR_TYPE_ACTION_CONF,
> > +				NULL,
> > +				"RSS hash function not supported "
> > +				"when pattern specified");
> > +	}
> >
> >  	if (!i40e_hash_validate_rss_types(rss_act->types))
> >  		return rte_flow_error_set(error, EINVAL,
> > --
> > 2.27.0
> 
> Acked-by: Beilei Xing <beilei.xing@intel.com>

Applied to dpdk-next-net-intel.

Thanks
Qi


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

end of thread, other threads:[~2021-06-21  8:31 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-11  1:35 [dpdk-dev] [PATCH v1] net/i40e: fix set rss hash function invalid Steve Yang
2021-06-11  1:45 ` Xing, Beilei
2021-06-11  6:54 ` [dpdk-dev] [PATCH v2] " Steve Yang
2021-06-21  7:14   ` Xing, Beilei
2021-06-21  8:03   ` [dpdk-dev] [PATCH v3] " Steve Yang
2021-06-21  8:19     ` Xing, Beilei
2021-06-21  8:30       ` 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).