From patchwork Wed Dec 9 07:14:38 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Murphy Yang X-Patchwork-Id: 84860 X-Patchwork-Delegate: qi.z.zhang@intel.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 0F1B3A09EA; Wed, 9 Dec 2020 08:18:27 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 8337BBE73; Wed, 9 Dec 2020 08:18:24 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 3901372D9 for ; Wed, 9 Dec 2020 08:18:21 +0100 (CET) IronPort-SDR: ddSRJEscEUY3p2cjnQj/XaHLhHHfWQWSZnJmIc3Bro+0IoF/SzosDAEihcCAboopaGPeJFVo05 PO165aNbbPMw== X-IronPort-AV: E=McAfee;i="6000,8403,9829"; a="174178210" X-IronPort-AV: E=Sophos;i="5.78,404,1599548400"; d="scan'208";a="174178210" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Dec 2020 23:18:20 -0800 IronPort-SDR: ItAki8Z45HLeMDKrpQILcPi2dWQHhT8DWCZFM6Zj+A+/FN5Wtv0evRqPfF3EiRLsEaUKncXmCQ HbpEkC1GE3KQ== X-IronPort-AV: E=Sophos;i="5.78,404,1599548400"; d="scan'208";a="364023015" Received: from unknown (HELO intel-npg-odc-srv02.cd.intel.com) ([10.240.178.186]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Dec 2020 23:18:16 -0800 From: Murphy Yang To: dev@dpdk.org Cc: qiming.yang@intel.com, stevex.yang@intel.com, jingjing.wu@intel.com, beilei.xing@intel.com, Murphy Yang Date: Wed, 9 Dec 2020 07:14:38 +0000 Message-Id: <20201209071438.32419-1-murphyx.yang@intel.com> X-Mailer: git-send-email 2.17.1 Subject: [dpdk-dev] [PATCH] net/iavf: fix negative GTP-U flow rules create successfully X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Currently, when use 'flow' command to create a negative GTP-U rule, it will be created successfully. The list shows the impacted outer and inner 'ipv4' GTP-U patterns with 'ipv4' or 'gtpu' type: - iavf_pattern_eth_ipv4_gtpu_ipv4_udp - iavf_pattern_eth_ipv4_gtpu_eh_ipv4_udp - iavf_pattern_eth_ipv4_gtpu_ipv4_tcp - iavf_pattern_eth_ipv4_gtpu_eh_ipv4_tcp - more impacted patterns with 'gtpu' type: > iavf_pattern_eth_ipv4_gtpu_ipv4 > iavf_pattern_eth_ipv4_gtpu_eh_ipv4 Same as the outer and inner 'ipv6' GTP-U patterns. So, this commit modifies the macro define of the 'IAVF_RSS_TYPE_XXX' to make the result correct. Fixes: 91f27b2e39ab ("net/iavf: refactor RSS") Signed-off-by: Murphy Yang --- drivers/net/iavf/iavf_hash.c | 30 ++++++++++-------------------- 1 file changed, 10 insertions(+), 20 deletions(-) diff --git a/drivers/net/iavf/iavf_hash.c b/drivers/net/iavf/iavf_hash.c index c4c73e6644..7a3ea39d66 100644 --- a/drivers/net/iavf/iavf_hash.c +++ b/drivers/net/iavf/iavf_hash.c @@ -326,34 +326,24 @@ struct virtchnl_proto_hdrs ipv6_udp_gtpc_tmplt = { ETH_RSS_S_VLAN | ETH_RSS_C_VLAN) /* IPv4 inner */ #define IAVF_RSS_TYPE_INNER_IPV4 ETH_RSS_IPV4 -#define IAVF_RSS_TYPE_INNER_IPV4_UDP (ETH_RSS_IPV4 | \ - ETH_RSS_NONFRAG_IPV4_UDP) -#define IAVF_RSS_TYPE_INNER_IPV4_TCP (ETH_RSS_IPV4 | \ - ETH_RSS_NONFRAG_IPV4_TCP) +#define IAVF_RSS_TYPE_INNER_IPV4_UDP (ETH_RSS_NONFRAG_IPV4_UDP) +#define IAVF_RSS_TYPE_INNER_IPV4_TCP (ETH_RSS_NONFRAG_IPV4_TCP) #define IAVF_RSS_TYPE_INNER_IPV4_SCTP (ETH_RSS_IPV4 | \ ETH_RSS_NONFRAG_IPV4_SCTP) /* IPv6 inner */ #define IAVF_RSS_TYPE_INNER_IPV6 ETH_RSS_IPV6 -#define IAVF_RSS_TYPE_INNER_IPV6_UDP (ETH_RSS_IPV6 | \ - ETH_RSS_NONFRAG_IPV6_UDP) -#define IAVF_RSS_TYPE_INNER_IPV6_TCP (ETH_RSS_IPV6 | \ - ETH_RSS_NONFRAG_IPV6_TCP) +#define IAVF_RSS_TYPE_INNER_IPV6_UDP (ETH_RSS_NONFRAG_IPV6_UDP) +#define IAVF_RSS_TYPE_INNER_IPV6_TCP (ETH_RSS_NONFRAG_IPV6_TCP) #define IAVF_RSS_TYPE_INNER_IPV6_SCTP (ETH_RSS_IPV6 | \ ETH_RSS_NONFRAG_IPV6_SCTP) /* GTPU IPv4 */ -#define IAVF_RSS_TYPE_GTPU_IPV4 (IAVF_RSS_TYPE_INNER_IPV4 | \ - ETH_RSS_GTPU) -#define IAVF_RSS_TYPE_GTPU_IPV4_UDP (IAVF_RSS_TYPE_INNER_IPV4_UDP | \ - ETH_RSS_GTPU) -#define IAVF_RSS_TYPE_GTPU_IPV4_TCP (IAVF_RSS_TYPE_INNER_IPV4_TCP | \ - ETH_RSS_GTPU) +#define IAVF_RSS_TYPE_GTPU_IPV4 (IAVF_RSS_TYPE_INNER_IPV4) +#define IAVF_RSS_TYPE_GTPU_IPV4_UDP (IAVF_RSS_TYPE_INNER_IPV4_UDP) +#define IAVF_RSS_TYPE_GTPU_IPV4_TCP (IAVF_RSS_TYPE_INNER_IPV4_TCP) /* GTPU IPv6 */ -#define IAVF_RSS_TYPE_GTPU_IPV6 (IAVF_RSS_TYPE_INNER_IPV6 | \ - ETH_RSS_GTPU) -#define IAVF_RSS_TYPE_GTPU_IPV6_UDP (IAVF_RSS_TYPE_INNER_IPV6_UDP | \ - ETH_RSS_GTPU) -#define IAVF_RSS_TYPE_GTPU_IPV6_TCP (IAVF_RSS_TYPE_INNER_IPV6_TCP | \ - ETH_RSS_GTPU) +#define IAVF_RSS_TYPE_GTPU_IPV6 (IAVF_RSS_TYPE_INNER_IPV6) +#define IAVF_RSS_TYPE_GTPU_IPV6_UDP (IAVF_RSS_TYPE_INNER_IPV6_UDP) +#define IAVF_RSS_TYPE_GTPU_IPV6_TCP (IAVF_RSS_TYPE_INNER_IPV6_TCP) /* ESP, AH, L2TPV3 and PFCP */ #define IAVF_RSS_TYPE_IPV4_ESP (ETH_RSS_ESP | ETH_RSS_IPV4) #define IAVF_RSS_TYPE_IPV4_AH (ETH_RSS_AH | ETH_RSS_IPV4)