<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<p><br>
</p>
<div class="moz-cite-prefix">On 11/17/2021 3:39 PM, Ferruh Yigit
wrote:<br>
</div>
<blockquote type="cite" cite="mid:6725b879-c2fd-3902-eee0-2b5ea284562b@intel.com">On
11/17/2021 8:57 AM, Gregory Etelson wrote:
<br>
<blockquote type="cite">Hello Ferruh,
<br>
<br>
Can you estimate when this patch will be merged into 21.11 ?
<br>
<br>
</blockquote>
<br>
Hi Gregory,
<br>
<br>
It is not merged because it is missing review.
<br>
<br>
Ori, Slava, can you please help with the review?
<br>
<br>
<br>
<blockquote type="cite">Thank you.
<br>
<br>
Regards,
<br>
Gregory
<br>
<br>
<blockquote type="cite">-----Original Message-----
<br>
From: Gregory Etelson <a class="moz-txt-link-rfc2396E" href="mailto:getelson@nvidia.com"><getelson@nvidia.com></a>
<br>
Sent: Tuesday, November 2, 2021 14:24
<br>
To: <a class="moz-txt-link-abbreviated" href="mailto:dev@dpdk.org">dev@dpdk.org</a>; Gregory Etelson
<br>
<a class="moz-txt-link-rfc2396E" href="mailto:getelson@nvidia.com"><getelson@nvidia.com></a>
<br>
Cc: Matan Azrad <a class="moz-txt-link-rfc2396E" href="mailto:matan@nvidia.com"><matan@nvidia.com></a>; Raslan
<br>
Darawsheh <a class="moz-txt-link-rfc2396E" href="mailto:rasland@nvidia.com"><rasland@nvidia.com></a>;
<br>
<a class="moz-txt-link-abbreviated" href="mailto:stable@dpdk.org">stable@dpdk.org</a>; Xiaoyun Li
<br>
<a class="moz-txt-link-rfc2396E" href="mailto:xiaoyun.li@intel.com"><xiaoyun.li@intel.com></a>
<br>
Subject: [PATCH] app/testpmd: fix tunnel offload
<br>
validation
<br>
<br>
Tunnel offload API allows application to restore
<br>
packet to
<br>
its original form if chain of flows missed after
<br>
DECAP action.
<br>
The main idea of the tunnel offload API was to
<br>
query port PMD
<br>
to provide flow elements - actions or items.
<br>
Flow elements supplied by PMD are merged with
<br>
original flow rule
<br>
elements provided by testpmd operator to
<br>
create a new flow rule,
<br>
optimal for PMD, to implement the tunnel
<br>
offload API.
<br>
That flow rule transformation is hidden form
<br>
testpmd operator and uses
<br>
internal testpmd resources.
<br>
<br>
Current testpmd did not release tunnel offload
<br>
resources if flow rule
<br>
validation failed.
<br>
<br>
The patch always releases tunnel offload
<br>
resources after flow rule
<br>
validation returns.
<br>
<br>
Cc: <a class="moz-txt-link-abbreviated" href="mailto:stable@dpdk.org">stable@dpdk.org</a>
<br>
<br>
Fixes: 1b9f274623b8 ("app/testpmd: add
<br>
commands for tunnel offload")
<br>
<br>
Signed-off-by: Gregory Etelson
<br>
<a class="moz-txt-link-rfc2396E" href="mailto:getelson@nvidia.com"><getelson@nvidia.com></a>
<br>
---
<br>
app/test-pmd/config.c | 6 ++++--
<br>
1 file changed, 4 insertions(+), 2 deletions(-)
<br>
<br>
diff --git a/app/test-pmd/config.c b/app/test-
<br>
pmd/config.c
<br>
index a18871d461..4870aaeba6 100644
<br>
--- a/app/test-pmd/config.c
<br>
+++ b/app/test-pmd/config.c
<br>
@@ -2011,6 +2011,7 @@
<br>
port_flow_validate(portid_t port_id,
<br>
struct rte_flow_error error;
<br>
struct port_flow_tunnel *pft = NULL;
<br>
struct rte_port *port;
<br>
+ int ret;
<br>
<br>
if (port_id_is_invalid(port_id,
<br>
ENABLED_WARN) ||
<br>
port_id == (portid_t)RTE_PORT_ALL)
<br>
@@ -2037,10 +2038,11 @@
<br>
port_flow_validate(portid_t port_id,
<br>
if (pft->actions)
<br>
actions = pft->actions;
<br>
}
<br>
- if (rte_flow_validate(port_id, attr,
<br>
pattern, actions, &error))
<br>
- return
<br>
port_flow_complain(&error);
<br>
+ ret = rte_flow_validate(port_id, attr,
<br>
pattern, actions, &error);
<br>
if (tunnel_ops->enabled)
<br>
<br>
port_flow_tunnel_offload_cmd_release(
<br>
port_id, tunnel_ops, pft);
<br>
+ if (ret)
<br>
+ return
<br>
port_flow_complain(&error);
<br>
printf("Flow rule validated\n");
<br>
return 0;
<br>
}
<br>
--
<br>
2.33.1
<br>
</blockquote>
<br>
</blockquote>
<br>
<pre class="content" style="box-sizing: border-box; overflow: auto; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 13px; display: block; padding: 9.5px; margin: 0px 0px 10px; line-height: 14.3px; color: rgb(51, 51, 51); word-break: break-all; overflow-wrap: break-word; background-color: white; border: 0px; border-radius: 0px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;"><span class="acked-by" style="box-sizing: border-box; color: rgb(45, 69, 102);">Acked-by: Aman Deep Singh <a class="moz-txt-link-rfc2396E" href="mailto:aman.deep.singh@intel.com"><aman.deep.singh@intel.com></a></span></pre>
</blockquote>
</body>
</html>