[dpdk-dev] [PATCH] net/i40e: fix hash enable issue in RSS flow
Ye Xiaolong
xiaolong.ye at intel.com
Thu May 14 08:28:21 CEST 2020
On 05/07, Shougang Wang wrote:
>This patch fixes the issue that failed to create an RSS rule with type
>L2-payload.
>
>Fixes: feaae285b342 ("net/i40e: support hash configuration in RSS flow")
>
>Signed-off-by: Shougang Wang <shougangx.wang at intel.com>
>---
> drivers/net/i40e/i40e_flow.c | 14 ++++++--------
> 1 file changed, 6 insertions(+), 8 deletions(-)
>
>diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c
>index 7e64ae53a..f5f2f0d5d 100644
>--- a/drivers/net/i40e/i40e_flow.c
>+++ b/drivers/net/i40e/i40e_flow.c
>@@ -4511,6 +4511,7 @@ i40e_flow_parse_rss_pattern(__rte_unused struct rte_eth_dev *dev,
> { pattern_fdir_ipv6_tcp, ETH_RSS_NONFRAG_IPV6_TCP },
> { pattern_fdir_ipv6_udp, ETH_RSS_NONFRAG_IPV6_UDP },
> { pattern_fdir_ipv6_sctp, ETH_RSS_NONFRAG_IPV6_SCTP },
>+ { pattern_ethertype, ETH_RSS_L2_PAYLOAD },
> { pattern_fdir_ipv6_esp, ETH_RSS_ESP },
> { pattern_fdir_ipv6_udp_esp, ETH_RSS_ESP },
> };
>@@ -4544,8 +4545,7 @@ i40e_flow_parse_rss_pattern(__rte_unused struct rte_eth_dev *dev,
> if (i40e_match_pattern(i40e_rss_pctype_patterns[i].item_array,
> items)) {
> p_info->types = i40e_rss_pctype_patterns[i].type;
>- rte_free(items);
>- return 0;
>+ break;
> }
> }
>
>@@ -4580,11 +4580,9 @@ i40e_flow_parse_rss_pattern(__rte_unused struct rte_eth_dev *dev,
> }
> break;
> default:
>- rte_flow_error_set(error, EINVAL,
>- RTE_FLOW_ERROR_TYPE_ITEM,
>- item,
>- "Not support range");
>- return -rte_errno;
>+ p_info->action_flag = 0;
>+ memset(info, 0, sizeof(struct i40e_queue_regions));
>+ return 0;
> }
> }
>
>@@ -4640,7 +4638,7 @@ i40e_flow_parse_rss_action(struct rte_eth_dev *dev,
> return -rte_errno;
> }
>
>- if (p_info.action_flag) {
>+ if (p_info.action_flag && rss->queue_num) {
> for (n = 0; n < 64; n++) {
> if (rss->types & (hf_bit << n)) {
> conf_info->region[0].hw_flowtype[0] = n;
>--
>2.17.1
>
Applied to dpdk-next-net-intel, Thanks.
More information about the dev
mailing list