From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 2E57AA0524 for ; Fri, 5 Feb 2021 12:19:53 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 23D361606BF; Fri, 5 Feb 2021 12:19:53 +0100 (CET) Received: from mail-wm1-f49.google.com (mail-wm1-f49.google.com [209.85.128.49]) by mails.dpdk.org (Postfix) with ESMTP id BB4251606B6 for ; Fri, 5 Feb 2021 12:19:51 +0100 (CET) Received: by mail-wm1-f49.google.com with SMTP id j11so5708582wmi.3 for ; Fri, 05 Feb 2021 03:19:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=hOPz4Z1CLiGdibMpnW/t7kRrJ1Gr1OdGklzlyMqFcUc=; b=p6I9CWgxdoGBsqiFQ0ZfhSnOKFnKVLLdb3VzZFYuq/Ung5f4Pah/smRzWjcB0nyavB TAlYHjYwfxFWh+OStaUx3JxOOUW/s1PsGnNMi3zDKPU/F4EdlYOQjVphk+cg5g9pmLzE AFQoUPxqvI6/X3NPhqty5ZQrBXuMlaD0C5h7hbswDyrWXYb3MCTkuTckN3hn9uv/s0xF /edYbALz/sGYG6XOzHVlgOANB2FLy0VKO0iWWvYn2b0iJZcXnnKqdSqwhkTmuShO6dEf XRoiVvxxcqF/X1h07IVOAbQZu5KpPGUrqcmRm7HKBLLylswHvUQl1BNvubZ6/WUOd0Ic wR4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=hOPz4Z1CLiGdibMpnW/t7kRrJ1Gr1OdGklzlyMqFcUc=; b=tgYi2g/OrXXnAhZwImVp4f7X+PRtq5hU9izs5EsROWzg4a4MMjpe+njqrZzVAXbten GbnReZx5dW247Eb4rmutCik3JMy4t+jP/gd6Qept40iQnM7O2UwpJmccDoWq8g3CTxO0 W7G8Vu53wAs0OMv+oDWgmD7jcC30PEX9Jb0IL8//eGpfPUfU7npzsgLfjStKtmQQhNNq IPfHjTmPojsFkNWwnsKwtG3lfQgDkiOqRILTLN6Q4XSJy0RG3bFt0d0/fxGV0fIC3dqj HLg+JXnLzOqi5y5nNG6GZO8azMwTehvsCUuZSsJC5BhswFwHeFnBXznHEoKl032w0xeZ b4TQ== X-Gm-Message-State: AOAM531PkOLe0QYTHwnlfThNg9UKij+eD2Muiq85X1bR41vI8TaRhfUu JJKlO1moZD35Bx6LbYZS/pyQYnD1aAlWLA== X-Google-Smtp-Source: ABdhPJw80VD+iliED9+lEMk6jghW2Ub6V5pAMMCrcgCZ/tH/wnd1devwj5H9iyqglgkpkdRSOZEYMg== X-Received: by 2002:a1c:a9ce:: with SMTP id s197mr3232228wme.146.1612523991410; Fri, 05 Feb 2021 03:19:51 -0800 (PST) Received: from localhost ([88.98.246.218]) by smtp.gmail.com with ESMTPSA id a132sm8604701wmf.42.2021.02.05.03.19.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 05 Feb 2021 03:19:50 -0800 (PST) From: luca.boccassi@gmail.com To: Wisam Jaddo Cc: Alexander Kozyrev , Suanming Mou , dpdk stable Date: Fri, 5 Feb 2021 11:14:56 +0000 Message-Id: <20210205111920.1272063-10-luca.boccassi@gmail.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210205111920.1272063-1-luca.boccassi@gmail.com> References: <20210205111920.1272063-1-luca.boccassi@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-stable] patch 'app/flow-perf: simplify objects initialization' has been queued to stable release 20.11.1 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" Hi, FYI, your patch has been queued to stable release 20.11.1 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 02/07/21. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/bluca/dpdk-stable This queued commit can be viewed at: https://github.com/bluca/dpdk-stable/commit/1d2f869e7c690437489ff76e2fa08e26e14439c0 Thanks. Luca Boccassi --- >From 1d2f869e7c690437489ff76e2fa08e26e14439c0 Mon Sep 17 00:00:00 2001 From: Wisam Jaddo Date: Thu, 26 Nov 2020 13:15:43 +0200 Subject: [PATCH] app/flow-perf: simplify objects initialization [ upstream commit 97544f85bd269d4be9e6e9b022a3682e1eb61a7b ] Since items are static then the default values will be zero, thus the memset to zero value is just a redundant code. Also remove the all not needed variables, that can be replaced with direct set to the structure itself. Fixes: bf3688f1e816 ("app/flow-perf: add insertion rate calculation") Signed-off-by: Wisam Jaddo Reviewed-by: Alexander Kozyrev Reviewed-by: Suanming Mou --- app/test-flow-perf/actions_gen.c | 30 +++----- app/test-flow-perf/items_gen.c | 123 ++++++++----------------------- 2 files changed, 44 insertions(+), 109 deletions(-) diff --git a/app/test-flow-perf/actions_gen.c b/app/test-flow-perf/actions_gen.c index ac525f6fdb..f265894247 100644 --- a/app/test-flow-perf/actions_gen.c +++ b/app/test-flow-perf/actions_gen.c @@ -145,12 +145,10 @@ add_set_meta(struct rte_flow_action *actions, uint8_t actions_counter, __rte_unused struct additional_para para) { - static struct rte_flow_action_set_meta meta_action; - - do { - meta_action.data = RTE_BE32(META_DATA); - meta_action.mask = RTE_BE32(0xffffffff); - } while (0); + static struct rte_flow_action_set_meta meta_action = { + .data = RTE_BE32(META_DATA), + .mask = RTE_BE32(0xffffffff), + }; actions[actions_counter].type = RTE_FLOW_ACTION_TYPE_SET_META; actions[actions_counter].conf = &meta_action; @@ -161,13 +159,11 @@ add_set_tag(struct rte_flow_action *actions, uint8_t actions_counter, __rte_unused struct additional_para para) { - static struct rte_flow_action_set_tag tag_action; - - do { - tag_action.data = RTE_BE32(META_DATA); - tag_action.mask = RTE_BE32(0xffffffff); - tag_action.index = TAG_INDEX; - } while (0); + static struct rte_flow_action_set_tag tag_action = { + .data = RTE_BE32(META_DATA), + .mask = RTE_BE32(0xffffffff), + .index = TAG_INDEX, + }; actions[actions_counter].type = RTE_FLOW_ACTION_TYPE_SET_TAG; actions[actions_counter].conf = &tag_action; @@ -178,11 +174,9 @@ add_port_id(struct rte_flow_action *actions, uint8_t actions_counter, __rte_unused struct additional_para para) { - static struct rte_flow_action_port_id port_id; - - do { - port_id.id = PORT_ID_DST; - } while (0); + static struct rte_flow_action_port_id port_id = { + .id = PORT_ID_DST, + }; actions[actions_counter].type = RTE_FLOW_ACTION_TYPE_PORT_ID; actions[actions_counter].conf = &port_id; diff --git a/app/test-flow-perf/items_gen.c b/app/test-flow-perf/items_gen.c index 2b1ab41467..aaa243a7c4 100644 --- a/app/test-flow-perf/items_gen.c +++ b/app/test-flow-perf/items_gen.c @@ -25,9 +25,6 @@ add_ether(struct rte_flow_item *items, static struct rte_flow_item_eth eth_spec; static struct rte_flow_item_eth eth_mask; - memset(ð_spec, 0, sizeof(struct rte_flow_item_eth)); - memset(ð_mask, 0, sizeof(struct rte_flow_item_eth)); - items[items_counter].type = RTE_FLOW_ITEM_TYPE_ETH; items[items_counter].spec = ð_spec; items[items_counter].mask = ð_mask; @@ -38,16 +35,12 @@ add_vlan(struct rte_flow_item *items, uint8_t items_counter, __rte_unused struct additional_para para) { - static struct rte_flow_item_vlan vlan_spec; - static struct rte_flow_item_vlan vlan_mask; - - uint16_t vlan_value = VLAN_VALUE; - - memset(&vlan_spec, 0, sizeof(struct rte_flow_item_vlan)); - memset(&vlan_mask, 0, sizeof(struct rte_flow_item_vlan)); - - vlan_spec.tci = RTE_BE16(vlan_value); - vlan_mask.tci = RTE_BE16(0xffff); + static struct rte_flow_item_vlan vlan_spec = { + .tci = RTE_BE16(VLAN_VALUE), + }; + static struct rte_flow_item_vlan vlan_mask = { + .tci = RTE_BE16(0xffff), + }; items[items_counter].type = RTE_FLOW_ITEM_TYPE_VLAN; items[items_counter].spec = &vlan_spec; @@ -61,9 +54,6 @@ add_ipv4(struct rte_flow_item *items, static struct rte_flow_item_ipv4 ipv4_spec; static struct rte_flow_item_ipv4 ipv4_mask; - memset(&ipv4_spec, 0, sizeof(struct rte_flow_item_ipv4)); - memset(&ipv4_mask, 0, sizeof(struct rte_flow_item_ipv4)); - ipv4_spec.hdr.src_addr = RTE_BE32(para.src_ip); ipv4_mask.hdr.src_addr = RTE_BE32(0xffffffff); @@ -80,9 +70,6 @@ add_ipv6(struct rte_flow_item *items, static struct rte_flow_item_ipv6 ipv6_spec; static struct rte_flow_item_ipv6 ipv6_mask; - memset(&ipv6_spec, 0, sizeof(struct rte_flow_item_ipv6)); - memset(&ipv6_mask, 0, sizeof(struct rte_flow_item_ipv6)); - /** Set ipv6 src **/ memset(&ipv6_spec.hdr.src_addr, para.src_ip, sizeof(ipv6_spec.hdr.src_addr) / 2); @@ -104,9 +91,6 @@ add_tcp(struct rte_flow_item *items, static struct rte_flow_item_tcp tcp_spec; static struct rte_flow_item_tcp tcp_mask; - memset(&tcp_spec, 0, sizeof(struct rte_flow_item_tcp)); - memset(&tcp_mask, 0, sizeof(struct rte_flow_item_tcp)); - items[items_counter].type = RTE_FLOW_ITEM_TYPE_TCP; items[items_counter].spec = &tcp_spec; items[items_counter].mask = &tcp_mask; @@ -120,9 +104,6 @@ add_udp(struct rte_flow_item *items, static struct rte_flow_item_udp udp_spec; static struct rte_flow_item_udp udp_mask; - memset(&udp_spec, 0, sizeof(struct rte_flow_item_udp)); - memset(&udp_mask, 0, sizeof(struct rte_flow_item_udp)); - items[items_counter].type = RTE_FLOW_ITEM_TYPE_UDP; items[items_counter].spec = &udp_spec; items[items_counter].mask = &udp_mask; @@ -141,9 +122,6 @@ add_vxlan(struct rte_flow_item *items, vni_value = VNI_VALUE; - memset(&vxlan_spec, 0, sizeof(struct rte_flow_item_vxlan)); - memset(&vxlan_mask, 0, sizeof(struct rte_flow_item_vxlan)); - /* Set standard vxlan vni */ for (i = 0; i < 3; i++) { vxlan_spec.vni[2 - i] = vni_value >> (i * 8); @@ -171,9 +149,6 @@ add_vxlan_gpe(struct rte_flow_item *items, vni_value = VNI_VALUE; - memset(&vxlan_gpe_spec, 0, sizeof(struct rte_flow_item_vxlan_gpe)); - memset(&vxlan_gpe_mask, 0, sizeof(struct rte_flow_item_vxlan_gpe)); - /* Set vxlan-gpe vni */ for (i = 0; i < 3; i++) { vxlan_gpe_spec.vni[2 - i] = vni_value >> (i * 8); @@ -193,18 +168,12 @@ add_gre(struct rte_flow_item *items, uint8_t items_counter, __rte_unused struct additional_para para) { - static struct rte_flow_item_gre gre_spec; - static struct rte_flow_item_gre gre_mask; - - uint16_t proto; - - proto = RTE_ETHER_TYPE_TEB; - - memset(&gre_spec, 0, sizeof(struct rte_flow_item_gre)); - memset(&gre_mask, 0, sizeof(struct rte_flow_item_gre)); - - gre_spec.protocol = RTE_BE16(proto); - gre_mask.protocol = RTE_BE16(0xffff); + static struct rte_flow_item_gre gre_spec = { + .protocol = RTE_BE16(RTE_ETHER_TYPE_TEB), + }; + static struct rte_flow_item_gre gre_mask = { + .protocol = RTE_BE16(0xffff), + }; items[items_counter].type = RTE_FLOW_ITEM_TYPE_GRE; items[items_counter].spec = &gre_spec; @@ -224,9 +193,6 @@ add_geneve(struct rte_flow_item *items, vni_value = VNI_VALUE; - memset(&geneve_spec, 0, sizeof(struct rte_flow_item_geneve)); - memset(&geneve_mask, 0, sizeof(struct rte_flow_item_geneve)); - for (i = 0; i < 3; i++) { geneve_spec.vni[2 - i] = vni_value >> (i * 8); geneve_mask.vni[2 - i] = 0xff; @@ -242,18 +208,12 @@ add_gtp(struct rte_flow_item *items, uint8_t items_counter, __rte_unused struct additional_para para) { - static struct rte_flow_item_gtp gtp_spec; - static struct rte_flow_item_gtp gtp_mask; - - uint32_t teid_value; - - teid_value = TEID_VALUE; - - memset(>p_spec, 0, sizeof(struct rte_flow_item_gtp)); - memset(>p_mask, 0, sizeof(struct rte_flow_item_gtp)); - - gtp_spec.teid = RTE_BE32(teid_value); - gtp_mask.teid = RTE_BE32(0xffffffff); + static struct rte_flow_item_gtp gtp_spec = { + .teid = RTE_BE32(TEID_VALUE), + }; + static struct rte_flow_item_gtp gtp_mask = { + .teid = RTE_BE32(0xffffffff), + }; items[items_counter].type = RTE_FLOW_ITEM_TYPE_GTP; items[items_counter].spec = >p_spec; @@ -265,18 +225,12 @@ add_meta_data(struct rte_flow_item *items, uint8_t items_counter, __rte_unused struct additional_para para) { - static struct rte_flow_item_meta meta_spec; - static struct rte_flow_item_meta meta_mask; - - uint32_t data; - - data = META_DATA; - - memset(&meta_spec, 0, sizeof(struct rte_flow_item_meta)); - memset(&meta_mask, 0, sizeof(struct rte_flow_item_meta)); - - meta_spec.data = RTE_BE32(data); - meta_mask.data = RTE_BE32(0xffffffff); + static struct rte_flow_item_meta meta_spec = { + .data = RTE_BE32(META_DATA), + }; + static struct rte_flow_item_meta meta_mask = { + .data = RTE_BE32(0xffffffff), + }; items[items_counter].type = RTE_FLOW_ITEM_TYPE_META; items[items_counter].spec = &meta_spec; @@ -289,21 +243,14 @@ add_meta_tag(struct rte_flow_item *items, uint8_t items_counter, __rte_unused struct additional_para para) { - static struct rte_flow_item_tag tag_spec; - static struct rte_flow_item_tag tag_mask; - uint32_t data; - uint8_t index; - - data = META_DATA; - index = TAG_INDEX; - - memset(&tag_spec, 0, sizeof(struct rte_flow_item_tag)); - memset(&tag_mask, 0, sizeof(struct rte_flow_item_tag)); - - tag_spec.data = RTE_BE32(data); - tag_mask.data = RTE_BE32(0xffffffff); - tag_spec.index = index; - tag_mask.index = 0xff; + static struct rte_flow_item_tag tag_spec = { + .data = RTE_BE32(META_DATA), + .index = TAG_INDEX, + }; + static struct rte_flow_item_tag tag_mask = { + .data = RTE_BE32(0xffffffff), + .index = 0xff, + }; items[items_counter].type = RTE_FLOW_ITEM_TYPE_TAG; items[items_counter].spec = &tag_spec; @@ -318,9 +265,6 @@ add_icmpv4(struct rte_flow_item *items, static struct rte_flow_item_icmp icmpv4_spec; static struct rte_flow_item_icmp icmpv4_mask; - memset(&icmpv4_spec, 0, sizeof(struct rte_flow_item_icmp)); - memset(&icmpv4_mask, 0, sizeof(struct rte_flow_item_icmp)); - items[items_counter].type = RTE_FLOW_ITEM_TYPE_ICMP; items[items_counter].spec = &icmpv4_spec; items[items_counter].mask = &icmpv4_mask; @@ -334,9 +278,6 @@ add_icmpv6(struct rte_flow_item *items, static struct rte_flow_item_icmp6 icmpv6_spec; static struct rte_flow_item_icmp6 icmpv6_mask; - memset(&icmpv6_spec, 0, sizeof(struct rte_flow_item_icmp6)); - memset(&icmpv6_mask, 0, sizeof(struct rte_flow_item_icmp6)); - items[items_counter].type = RTE_FLOW_ITEM_TYPE_ICMP6; items[items_counter].spec = &icmpv6_spec; items[items_counter].mask = &icmpv6_mask; -- 2.29.2 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2021-02-05 11:18:29.781714435 +0000 +++ 0010-app-flow-perf-simplify-objects-initialization.patch 2021-02-05 11:18:28.590687000 +0000 @@ -1 +1 @@ -From 97544f85bd269d4be9e6e9b022a3682e1eb61a7b Mon Sep 17 00:00:00 2001 +From 1d2f869e7c690437489ff76e2fa08e26e14439c0 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 97544f85bd269d4be9e6e9b022a3682e1eb61a7b ] + @@ -13 +14,0 @@ -Cc: stable@dpdk.org @@ -24 +25 @@ -index 1364407056..c3545ba32f 100644 +index ac525f6fdb..f265894247 100644 @@ -27 +28 @@ -@@ -143,12 +143,10 @@ add_set_meta(struct rte_flow_action *actions, +@@ -145,12 +145,10 @@ add_set_meta(struct rte_flow_action *actions, @@ -44 +45 @@ -@@ -159,13 +157,11 @@ add_set_tag(struct rte_flow_action *actions, +@@ -161,13 +159,11 @@ add_set_tag(struct rte_flow_action *actions, @@ -63 +64 @@ -@@ -176,11 +172,9 @@ add_port_id(struct rte_flow_action *actions, +@@ -178,11 +174,9 @@ add_port_id(struct rte_flow_action *actions, @@ -79 +80 @@ -index 0950023608..ccebc08b39 100644 +index 2b1ab41467..aaa243a7c4 100644 @@ -82 +83 @@ -@@ -26,9 +26,6 @@ add_ether(struct rte_flow_item *items, +@@ -25,9 +25,6 @@ add_ether(struct rte_flow_item *items, @@ -92 +93 @@ -@@ -39,16 +36,12 @@ add_vlan(struct rte_flow_item *items, +@@ -38,16 +35,12 @@ add_vlan(struct rte_flow_item *items, @@ -115,13 +116,13 @@ -@@ -63,9 +56,6 @@ add_ipv4(struct rte_flow_item *items, - static struct rte_flow_item_ipv4 ipv4_masks[RTE_MAX_LCORE] __rte_cache_aligned; - uint8_t ti = para.core_idx; - -- memset(&ipv4_specs[ti], 0, sizeof(struct rte_flow_item_ipv4)); -- memset(&ipv4_masks[ti], 0, sizeof(struct rte_flow_item_ipv4)); -- - ipv4_specs[ti].hdr.src_addr = RTE_BE32(para.src_ip); - ipv4_masks[ti].hdr.src_addr = RTE_BE32(0xffffffff); - -@@ -83,9 +73,6 @@ add_ipv6(struct rte_flow_item *items, - static struct rte_flow_item_ipv6 ipv6_masks[RTE_MAX_LCORE] __rte_cache_aligned; - uint8_t ti = para.core_idx; +@@ -61,9 +54,6 @@ add_ipv4(struct rte_flow_item *items, + static struct rte_flow_item_ipv4 ipv4_spec; + static struct rte_flow_item_ipv4 ipv4_mask; + +- memset(&ipv4_spec, 0, sizeof(struct rte_flow_item_ipv4)); +- memset(&ipv4_mask, 0, sizeof(struct rte_flow_item_ipv4)); +- + ipv4_spec.hdr.src_addr = RTE_BE32(para.src_ip); + ipv4_mask.hdr.src_addr = RTE_BE32(0xffffffff); + +@@ -80,9 +70,6 @@ add_ipv6(struct rte_flow_item *items, + static struct rte_flow_item_ipv6 ipv6_spec; + static struct rte_flow_item_ipv6 ipv6_mask; @@ -129,2 +130,2 @@ -- memset(&ipv6_specs[ti], 0, sizeof(struct rte_flow_item_ipv6)); -- memset(&ipv6_masks[ti], 0, sizeof(struct rte_flow_item_ipv6)); +- memset(&ipv6_spec, 0, sizeof(struct rte_flow_item_ipv6)); +- memset(&ipv6_mask, 0, sizeof(struct rte_flow_item_ipv6)); @@ -133,3 +134,3 @@ - memset(&ipv6_specs[ti].hdr.src_addr, para.src_ip, - sizeof(ipv6_specs->hdr.src_addr) / 2); -@@ -107,9 +94,6 @@ add_tcp(struct rte_flow_item *items, + memset(&ipv6_spec.hdr.src_addr, para.src_ip, + sizeof(ipv6_spec.hdr.src_addr) / 2); +@@ -104,9 +91,6 @@ add_tcp(struct rte_flow_item *items, @@ -145 +146 @@ -@@ -123,9 +107,6 @@ add_udp(struct rte_flow_item *items, +@@ -120,9 +104,6 @@ add_udp(struct rte_flow_item *items, @@ -155 +156 @@ -@@ -144,9 +125,6 @@ add_vxlan(struct rte_flow_item *items, +@@ -141,9 +122,6 @@ add_vxlan(struct rte_flow_item *items, @@ -159,2 +160,2 @@ -- memset(&vxlan_specs[ti], 0, sizeof(struct rte_flow_item_vxlan)); -- memset(&vxlan_masks[ti], 0, sizeof(struct rte_flow_item_vxlan)); +- memset(&vxlan_spec, 0, sizeof(struct rte_flow_item_vxlan)); +- memset(&vxlan_mask, 0, sizeof(struct rte_flow_item_vxlan)); @@ -164,2 +165,2 @@ - vxlan_specs[ti].vni[2 - i] = vni_value >> (i * 8); -@@ -174,9 +152,6 @@ add_vxlan_gpe(struct rte_flow_item *items, + vxlan_spec.vni[2 - i] = vni_value >> (i * 8); +@@ -171,9 +149,6 @@ add_vxlan_gpe(struct rte_flow_item *items, @@ -169,2 +170,2 @@ -- memset(&vxlan_gpe_specs[ti], 0, sizeof(struct rte_flow_item_vxlan_gpe)); -- memset(&vxlan_gpe_masks[ti], 0, sizeof(struct rte_flow_item_vxlan_gpe)); +- memset(&vxlan_gpe_spec, 0, sizeof(struct rte_flow_item_vxlan_gpe)); +- memset(&vxlan_gpe_mask, 0, sizeof(struct rte_flow_item_vxlan_gpe)); @@ -174,2 +175,2 @@ - vxlan_gpe_specs[ti].vni[2 - i] = vni_value >> (i * 8); -@@ -196,18 +171,12 @@ add_gre(struct rte_flow_item *items, + vxlan_gpe_spec.vni[2 - i] = vni_value >> (i * 8); +@@ -193,18 +168,12 @@ add_gre(struct rte_flow_item *items, @@ -200 +201 @@ -@@ -227,9 +196,6 @@ add_geneve(struct rte_flow_item *items, +@@ -224,9 +193,6 @@ add_geneve(struct rte_flow_item *items, @@ -204,2 +205,2 @@ -- memset(&geneve_specs[ti], 0, sizeof(struct rte_flow_item_geneve)); -- memset(&geneve_masks[ti], 0, sizeof(struct rte_flow_item_geneve)); +- memset(&geneve_spec, 0, sizeof(struct rte_flow_item_geneve)); +- memset(&geneve_mask, 0, sizeof(struct rte_flow_item_geneve)); @@ -208,3 +209,3 @@ - geneve_specs[ti].vni[2 - i] = vni_value >> (i * 8); - geneve_masks[ti].vni[2 - i] = 0xff; -@@ -245,18 +211,12 @@ add_gtp(struct rte_flow_item *items, + geneve_spec.vni[2 - i] = vni_value >> (i * 8); + geneve_mask.vni[2 - i] = 0xff; +@@ -242,18 +208,12 @@ add_gtp(struct rte_flow_item *items, @@ -235 +236 @@ -@@ -268,18 +228,12 @@ add_meta_data(struct rte_flow_item *items, +@@ -265,18 +225,12 @@ add_meta_data(struct rte_flow_item *items, @@ -260 +261 @@ -@@ -292,21 +246,14 @@ add_meta_tag(struct rte_flow_item *items, +@@ -289,21 +243,14 @@ add_meta_tag(struct rte_flow_item *items, @@ -290 +291 @@ -@@ -321,9 +268,6 @@ add_icmpv4(struct rte_flow_item *items, +@@ -318,9 +265,6 @@ add_icmpv4(struct rte_flow_item *items, @@ -300 +301 @@ -@@ -337,9 +281,6 @@ add_icmpv6(struct rte_flow_item *items, +@@ -334,9 +278,6 @@ add_icmpv6(struct rte_flow_item *items,