From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <users-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id D9869457B1
	for <public@inbox.dpdk.org>; Tue, 13 Aug 2024 14:14:15 +0200 (CEST)
Received: from mails.dpdk.org (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id CE85B40A84;
	Tue, 13 Aug 2024 14:14:15 +0200 (CEST)
Received: from EUR05-AM6-obe.outbound.protection.outlook.com
 (mail-am6eur05on2050.outbound.protection.outlook.com [40.107.22.50])
 by mails.dpdk.org (Postfix) with ESMTP id 2E615402C2
 for <users@dpdk.org>; Tue, 13 Aug 2024 14:13:55 +0200 (CEST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=gSgwS2vsb6zUyXeeKOgzZNoOMAUdEmZer5R9nvl1fbIw2t+MfC/mmSC2I0RY2CeSM3AysvVU1SoLwBlrpWdmFfW+TCaP0ZBaxwFP+URMs1IjsK7XwVn511wBSx3O1sprRgGfYlgSvVOaUyChmMEEzk0OYn1sDQcgtkQfNhAVDhC3lp+PYfsT/NBtUBDbgCHvhGANMpTCLGI1q3Drkm8dzZ1VIZ56S22bXj34aTPfJumaDneb5kw+4rXx35qsCJZzPH6yTkloZiZzTi7fyh85RE40HDqD0jAt/EmWYx88zRB99K1FyDcBzZMDB4dqydeAjqDwdGlw7PCofFmJdbK/aA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=/9fKYY8oUig0YGCTD8jOnnZquBtIEySTyzvZ0k6HrFA=;
 b=NIJcd5dF0fD/0BpHWAtjjiatEXYKEwObuVEC1UD+Je9jx8HOw34HoBzq4JKuont10TFNNH2MSLcR6o5Swh5z5uNzZSK+GTAUGnqgCPkxiIkXdkubB+iH3c+plfQwRb/fNSH55pZwRvMo+doC9u0rNf3Tp3I0TcPleYqehHuG4P8qXZ5yWuBXivFoAhXqfDzkWnpkpnZPaDhQ1AXkncVB4jogco393qsu4oJqEPFwS7sdK1eBVDaOKPAgD3KHQF1FQkbA0gVuNLtdeY/TuJTiFnOooEoefSoeSJoYXdUuQuuW7PkavGVN20i8jSa/9DUMsOKEAUqrx9Jd6NrSjBUheg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=sap.com; dmarc=pass action=none header.from=sap.com; dkim=pass
 header.d=sap.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sap.com; s=selector1; 
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=/9fKYY8oUig0YGCTD8jOnnZquBtIEySTyzvZ0k6HrFA=;
 b=hM3auYz5/i54laTTfVkmNN/Jn1IsIFiPjA4AG00nf8WNrVw0HbRDcynAhd+KS58rpCuhM7dO/dEXCI1rqm89Y+jTKZD18kGJNi2zhuEgGhoUB+iuc7W7suxbpUjjD5sAuJ5WfoSTexJlY03tCni/7imZw4x9qaashNAu6mOBYqZrgsqrF3tmYGJ6GG6mdRIcwot6Kyd1jsnuslsVTfE1dku7rWwom/bLTy4uE1u2AIcmyLS/3b/tOP8F0+8cewt5jgjXwUp6+o9v3Bu/7zsVBVlYHC136a/PTI7+aWy8v72+sT49KA2NQmGtS5OskCELqZdorERfRV5Y2hEgCxRe4Q==
Received: from AM0PR02MB5796.eurprd02.prod.outlook.com (2603:10a6:208:184::20)
 by AS2PR02MB8887.eurprd02.prod.outlook.com (2603:10a6:20b:556::17)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7849.22; Tue, 13 Aug
 2024 12:13:52 +0000
Received: from AM0PR02MB5796.eurprd02.prod.outlook.com
 ([fe80::80e:ae12:a48a:5093]) by AM0PR02MB5796.eurprd02.prod.outlook.com
 ([fe80::80e:ae12:a48a:5093%5]) with mapi id 15.20.7849.021; Tue, 13 Aug 2024
 12:13:52 +0000
From: "Li, Tao" <tao.li06@sap.com>
To: "users@dpdk.org" <users@dpdk.org>
Subject: Failed to generalize modify_field action template for IPv6 src
 address using the Async API
Thread-Topic: Failed to generalize modify_field action template for IPv6 src
 address using the Async API
Thread-Index: AQHa7Wn8XR+wgFrkqEikQd2u5uzfgw==
Date: Tue, 13 Aug 2024 12:13:52 +0000
Message-ID: <AM0PR02MB5796C9AE81F8FBA480C7A4EB80862@AM0PR02MB5796.eurprd02.prod.outlook.com>
Accept-Language: en-GB, en-US
Content-Language: en-GB
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=sap.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: AM0PR02MB5796:EE_|AS2PR02MB8887:EE_
x-ms-office365-filtering-correlation-id: 4ac01a58-2baa-4c00-1feb-08dcbb91654a
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0; ARA:13230040|376014|366016|1800799024|38070700018;
x-microsoft-antispam-message-info: =?Windows-1252?Q?CfHCKtpJfjH9DSgaT2x8DHzNbWlt43eDrBQUdW4Equ7P8rBfjDafr69d?=
 =?Windows-1252?Q?Cu8bZs/2/EgQexILJA+KmAFxeOehrQZw8DdqVuJFZYkbgPLWBdCbv6Mj?=
 =?Windows-1252?Q?S8qoXH9Z6eRbxSScop/KIhO1TJpYspkgTdUx3m11s3nYWqdo1/8lduYk?=
 =?Windows-1252?Q?T3guaIzF3DcwIM8T8ZmUfKqtQW/+nbcxuYAXEvDqGjIFNlwkSCI2qq6L?=
 =?Windows-1252?Q?CB3UDDz6qD4L/liWAFgQKB2JD0xskW4Wu1JXk4wwiBXmtcbnuVkT+aVR?=
 =?Windows-1252?Q?SwpB7fkQ1hLGsa/Me/UrEDuwy50BnAE7if+BV11GVE1p6AseVEa3n6Jq?=
 =?Windows-1252?Q?8IXf+77B3TMKmrg9H2dHYF4yZ0TY3rVLhFr8fpZkz1dFbiw7Pxgk0+/w?=
 =?Windows-1252?Q?R66OU3Wm761+IAA//WOCbSwUqzDDGlj8KOmfIahGLGrjpmxj+wsB4czD?=
 =?Windows-1252?Q?nwykR9+E5p3Yprr4L+akpXY2GBTCLvHayWPMt0pMbQTWgIH31dW5/P4G?=
 =?Windows-1252?Q?Vn7tB4yuVacSO/bO0uQ28med1lOpBE+/PufOQhEiOZ8Vn1qHk2H+oaqp?=
 =?Windows-1252?Q?cxcIAR2hhu9XdfgZs5Q8iwHA/PeYJXChLZhFgYBdt52V68pX7FZ42fJ8?=
 =?Windows-1252?Q?XOeXr17pzsW5gLr1OIWbaiWDSMN4j26c3vZty51ZjXOY1z8U675ueMSt?=
 =?Windows-1252?Q?ZBl9kYr/UBgvO+c/dmpIXDXBXoQjwvFtvY/FGRZKno60DdC5sF115vvm?=
 =?Windows-1252?Q?vV1XAMlVKk8zV6R1YZsvUap92EJDb1VDc3mCiIFq8ENuhVF++R8wjFQA?=
 =?Windows-1252?Q?2a+E5tdmO+YIjZSgxzQXugylJnBGFpgJDFVRDnLZRXTxSh9WCjvtkiuy?=
 =?Windows-1252?Q?sdcPEYtfjqFaStAkbjq4k8GM40cKRe3G6/8zSXR16Vt1y1dRGbp8/mLP?=
 =?Windows-1252?Q?3NejwkYGInhrVt+qFDv10q0Xd11AUB0Kf238h21ADvD2T15Cpz/HHNxP?=
 =?Windows-1252?Q?eueaCKdL5THQ31wOeiHl+WvecyIhBa6/hQfGs689bs39mfrct3II4sOW?=
 =?Windows-1252?Q?BKcgy+bg6OTFUYbcsLNw97YGRRWJPjwyUO1OwGqxgqm4+tvwIdJcGe4D?=
 =?Windows-1252?Q?8aVFqNBH6IZ3RZOhYoarAipYgxmJQ5lvbU4ZIKAJtbZfLSz2JuLCwbtX?=
 =?Windows-1252?Q?vwnrdz1R5QpogPZhMRpDVYUGb43xdxzqmOOCmqp7MolZMhSWBL6SS60b?=
 =?Windows-1252?Q?XLM9Q7kBvXW/NKz/3A1LXYMdA6pIy8LwqyMDhcKeEbM54MR4S/yDbLTT?=
 =?Windows-1252?Q?s9IKeuBQNLU/FiyM8DNm7ESJkcHLSmbZ3/4dDOMoB6mtrIJ9lWfSm87t?=
 =?Windows-1252?Q?RfqGzAhsWDgLAbbRY9s00iFLpcYic8MEN0zCYTr8N/flQBkTJdOGl4Cr?=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:AM0PR02MB5796.eurprd02.prod.outlook.com; PTR:; CAT:NONE;
 SFS:(13230040)(376014)(366016)(1800799024)(38070700018); DIR:OUT; SFP:1101; 
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?Windows-1252?Q?hMyF6m9hgLNVNdMIrPxu6umRMlSrZPZSGellKO4ywgR8ZgOgX7f3PtKq?=
 =?Windows-1252?Q?ajeUAKVOpqv/i0CrF2nnltA8TRqw9I7SXvvxoM+8nH68YmWaFESH8GaD?=
 =?Windows-1252?Q?tjQegPl9ov62TXfnbtRH9ZmoSTuyz+YX+GtRO+YljBN9m4oPNlBLfNVz?=
 =?Windows-1252?Q?ILIFtmyDR3zJJ5//88uESR9qAueSQr4L+vhPsnu1HQu2m6rtNEbIC7B2?=
 =?Windows-1252?Q?l1sB9BKlgujGwfQIQGGVpMaLeXlodbkyVu3Rt+0VT8cMhhe7KdhrfTTJ?=
 =?Windows-1252?Q?AexAKCnDg1OFMWcBFReVjpgGFd9qi+09y1cCy7RvPQv08Ek/8P/YvxCk?=
 =?Windows-1252?Q?4hEj4YDiCbc+Fw9qEs05OyFBib4uocmCJZLXdF5hs/Rwe41x1ZkdNDNr?=
 =?Windows-1252?Q?Cy/5GpSgA5yABq5Esel42b2JcKx6/oiP6sRkaIoI8ch6/5tvssmOCzfH?=
 =?Windows-1252?Q?fRonycIqlP+BaCDDrGmYu2boPwbDOJeURsrzDOap7KPQbqOeZOqD70ps?=
 =?Windows-1252?Q?w0QISPmQTJAuG7kWksbZpFNMpZWWB8OXLwaf1P4rsq3B54yC6HWpLi4+?=
 =?Windows-1252?Q?8q7YNAMkie/fwDE71OVbnWJZxGtHZ1dklH6F1E6NTH+a1fYHsSX4kVjc?=
 =?Windows-1252?Q?UX9/rl8Hr6Zplf35ldfv1weHyC0mb1aghzuw0IOQcYlfXLcv7NRtQdSb?=
 =?Windows-1252?Q?DRnGi3A7OWqgy/z+gBV1myH2P4gQdSoJST6Ka1tWVY59Las0q2LRHj3a?=
 =?Windows-1252?Q?ayFy5Re0x17SzswwJghNJT4EvxKUdTMWGcFbvvjXDrGoynRMMt6DpoUx?=
 =?Windows-1252?Q?mY6VUo95OxaGZc3nBzGVOqNDLzEGn0WQR1YtfyoHZuGU7J1cq/1KB7nc?=
 =?Windows-1252?Q?YdXWuSoqVKwsI8BxITxiUYUeSIfdSmOX2G6Pjie6Chnhi/q9fIAx4Bxn?=
 =?Windows-1252?Q?bmfRCqkiXOtkLshgUQbUI4+pd1/xRFhbrkQu6b+bO55i3hoRqt69+SST?=
 =?Windows-1252?Q?JckMOsuj0yDZ8pgzxvTPzXvcj0iWEMsQMh4L8cJDnl8fVvaU64XSJZXB?=
 =?Windows-1252?Q?L3hg1g64WQg8SpczYCESXlc7ZvIIuTET6OLu6MChRRjqArhcn/1DYV+m?=
 =?Windows-1252?Q?TJ7KHpHZf/mnJ7qrbTz5iJ0gARW1o3j2TrngLFpbMPBJAIsq38RNxdA+?=
 =?Windows-1252?Q?uNWHTGc7B5q+yoIu14I7RmH2/WHkks8/hSJ2c2679o6qmsik+RdFMg5Q?=
 =?Windows-1252?Q?54Xk/iLOI7zufVt/WFmYmdLBuoILXoKD2LRbTl7rkx1UYzBKyxiR8Kmn?=
 =?Windows-1252?Q?/sV1zJEuYfMDtxifQtRMSqb8qwu93UM9xqzjqbJV0mNaWw9Ak6oY0TlW?=
 =?Windows-1252?Q?1vEZ9hsiHOQzDZ3hdkyDDP6x+/evdby+xLlDRLUw3FnI/UEnuXzi8AoM?=
 =?Windows-1252?Q?78zOqpxJgbX1ci4f8F+ouotq20orAkwPhA/cP0vi/eBsw4wsO4jFvr0Y?=
 =?Windows-1252?Q?iRYbXCQ9JEhf0GRMGwQz5c/IyV04uNhfa9TxcnJp+LIgxtb2jiA/SVet?=
 =?Windows-1252?Q?KLdZzygAPSKOefnlOtYCAz+a4RiUk7+du1kD/cNLL6pS/hwEMZYN5WDa?=
 =?Windows-1252?Q?e3IKjR3lUXSVHjgyfHu7ieVLngUtMhpXIwwu4rx9qSc7TfTSWMYMYe+N?=
 =?Windows-1252?Q?vrQS/Hno06i8W7cY0G/sjrwlwpl8/ulL?=
Content-Type: multipart/alternative;
 boundary="_000_AM0PR02MB5796C9AE81F8FBA480C7A4EB80862AM0PR02MB5796eurp_"
MIME-Version: 1.0
X-OriginatorOrg: sap.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: AM0PR02MB5796.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 4ac01a58-2baa-4c00-1feb-08dcbb91654a
X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Aug 2024 12:13:52.3231 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 42f7676c-f455-423c-82f6-dc2d99791af7
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: dzG0rQhpYNaRBaB3VSEp11gJGyPuYidPRLTkR1wSi3xC4wtOcV+TnISYzTIdcYk6Nsqh/ve5Z037ejx3LHCtww==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR02MB8887
X-BeenThere: users@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK usage discussions <users.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/users>,
 <mailto:users-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/users/>
List-Post: <mailto:users@dpdk.org>
List-Help: <mailto:users-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/users>,
 <mailto:users-request@dpdk.org?subject=subscribe>
Errors-To: users-bounces@dpdk.org

--_000_AM0PR02MB5796C9AE81F8FBA480C7A4EB80862AM0PR02MB5796eurp_
Content-Type: text/plain; charset="Windows-1252"
Content-Transfer-Encoding: quoted-printable

Hello All,

I am using the async API to install flow rules to perform modify_field acti=
on to change content of packets=92 headers, especially the src address in a=
 IPv6 header.  But I am facing the issue of being unable to generalize the =
action template for this purpose. The testpmd commands used to modify the s=
rc IPv6 address of an incoming packet from PF0, then forward it to a VM are=
 as follows. These commands are inspired by the synchronous examples from [=
1].

<Command to start test-pmd>
sudo ./dpdk-testpmd -a 3b:00.0,dv_flow_en=3D2,representor=3Dpf0vf0 -- -i --=
rxq=3D1 --txq=3D1 --flow-isolate-all
</Command to start test-pmd>

<Install async rules changing ipv6 src address>
port stop all
flow configure 0 queues_number 1 queues_size 10 counters_number 0 aging_cou=
nters_number 0 meters_number 0 flags 0
flow configure 1 queues_number 1 queues_size 10 counters_number 0 aging_cou=
nters_number 0 meters_number 0 flags 0
port start all

flow pattern_template 0 create pattern_template_id 10  transfer template re=
presented_port ethdev_port_id is 0 / eth / ipv6 / end
flow actions_template 0 create transfer actions_template_id 10  template  j=
ump / end mask jump / end

flow pattern_template 0 create pattern_template_id 11  transfer template et=
h / ipv6 / end
flow actions_template 0 create transfer actions_template_id 13 template mod=
ify_field op set dst_type ipv6_src dst_level 0 dst_offset 0 src_type value =
src_value FFFFFFFFFFFF width 128 / represented_port / end mask modify_field=
 op set dst_type ipv6_src dst_level 0xff dst_offset 0xffffffff src_type val=
ue src_value FFFFFFFFFFFF width 0xffffffff / represented_port / end

flow template_table 0 create group 0 priority 0 transfer wire_orig table_id=
 0x1 rules_number 8 pattern_template 10 actions_template 10
flow template_table 0 create group 2 priority 0 transfer table_id 0x3 rules=
_number 8 pattern_template 11 actions_template 13

flow queue 0 create 0 template_table 0x1 pattern_template 0 actions_templat=
e 0 postpone no pattern represented_port ethdev_port_id is 0 / eth / ipv6 /=
 end actions  jump group 2 /  end
flow queue 0 create 0 template_table 0x3 pattern_template 0 actions_templat=
e 0 postpone no pattern eth / ipv6  / end actions modify_field op set dst_t=
ype ipv6_src src_type value src_value 20010db8000000008a2e037073341234 widt=
h 128 / represented_port ethdev_port_id 1 / end

flow push 0 queue 0
</Install async rules changing ipv6 src address>


It is observed that, the src IPv6 address is changed but with the value of =
FFFF:FFFF:FFFF::, which is identical to the value used in the action templa=
te creation. Setting src_value to 0 would change the src IPv6 address to ::=
 , which does not provide a generalized modify_field action template either=
.

<Packet trace>
11:42:57.922978 90:3c:b3:33:72:fb > 04:3f:72:e8:cf:ca, ethertype IPv6 (0x86=
dd), length 82: ffff:ffff:ffff:: > 7a2a:bcde:e0123:e301:0:1:0:1: 192.168.12=
9.5 > 172.32.4.9: ICMP echo request, id 0, seq 0, length 8
</Packet trace>


Thus, I would like to ask the community, if it is possible or how to create=
 a generalized modify_field action template to allow installation of flow r=
ules with different src IPv6 address values, as experimented above.
Many thanks in advance.

[1] https://inbox.dpdk.org/dev/20211012080631.28504-4-viacheslavo@nvidia.co=
m/

Best regards,
Tao


--_000_AM0PR02MB5796C9AE81F8FBA480C7A4EB80862AM0PR02MB5796eurp_
Content-Type: text/html; charset="Windows-1252"
Content-Transfer-Encoding: quoted-printable

<html xmlns:o=3D"urn:schemas-microsoft-com:office:office" xmlns:w=3D"urn:sc=
hemas-microsoft-com:office:word" xmlns:m=3D"http://schemas.microsoft.com/of=
fice/2004/12/omml" xmlns=3D"http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3DWindows-1=
252">
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:DengXian;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:Aptos;
	panose-1:2 11 0 4 2 2 2 2 2 4;}
@font-face
	{font-family:"\@DengXian";
	panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	font-size:12.0pt;
	font-family:"Aptos",sans-serif;
	mso-ligatures:standardcontextual;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#467886;
	text-decoration:underline;}
span.spelle
	{mso-style-name:spelle;}
span.grame
	{mso-style-name:grame;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;
	mso-ligatures:none;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
	{page:WordSection1;}
--></style>
</head>
<body lang=3D"en-DE" link=3D"#467886" vlink=3D"#96607D" style=3D"word-wrap:=
break-word">
<div class=3D"WordSection1">
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:11.0pt">Hell=
o All,</span><span style=3D"mso-ligatures:none"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:11.0pt">&nbs=
p;</span><o:p></o:p></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">I am using the async API to ins=
tall flow rules to perform
<span class=3D"spelle">modify_field</span> action to change content of pack=
ets=92 <span class=3D"grame">
headers, especially the src address in a IPv6 header. &nbsp;But I am</span>=
 facing the issue of being unable to generalize the action template for thi=
s purpose. The testpmd commands used to modify the src IPv6 address of an i=
ncoming packet from PF0, then forward
 it to a VM are as follows. These commands are inspired by the synchronous =
examples from [1].
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:11.0pt"><br>
</span><b><span style=3D"font-size:10.5pt;color:#212121">&lt;Command to sta=
rt test-pmd&gt;</span></b><o:p></o:p></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;color:#212121">sudo =
./dpdk-testpmd -a 3b:00.0,dv_flow_en=3D2,representor=3Dpf0vf0 -- -i --rxq=
=3D1 --txq=3D1 --flow-isolate-all</span><o:p></o:p></p>
<p class=3D"MsoNormal"><b><span style=3D"font-size:10.5pt;color:#212121">&l=
t;/Command to start test-pmd&gt;</span></b><o:p></o:p></p>
<p class=3D"MsoNormal"><b><span lang=3D"EN-US" style=3D"font-size:10.5pt;co=
lor:#212121">&nbsp;</span></b><o:p></o:p></p>
<p class=3D"MsoNormal"><b><span style=3D"font-size:10.5pt;color:#212121">&l=
t;</span></b><b><span lang=3D"EN-US" style=3D"font-size:10.5pt;color:#21212=
1">Install async rules changing ipv6 src address</span></b><b><span style=
=3D"font-size:10.5pt;color:#212121">&gt;</span></b><o:p></o:p></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;color:#333333;mso-li=
gatures:none">port stop all</span><span style=3D"font-size:10.5pt;mso-ligat=
ures:none"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;color:#333333;mso-li=
gatures:none">flow configure 0 queues_number 1 queues_size 10 counters_numb=
er 0 aging_counters_number 0 meters_number 0 flags 0</span><span style=3D"f=
ont-size:10.5pt;mso-ligatures:none"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;color:#333333;mso-li=
gatures:none">flow configure 1 queues_number 1 queues_size 10 counters_numb=
er 0 aging_counters_number 0 meters_number 0 flags 0</span><span style=3D"f=
ont-size:10.5pt;mso-ligatures:none"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;color:#333333;mso-li=
gatures:none">port start all</span><span lang=3D"EN-US" style=3D"font-size:=
10.5pt;color:#333333;mso-ligatures:none"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;mso-l=
igatures:none"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;color:#333333;mso-li=
gatures:none">flow pattern_template 0 create pattern_template_id 10&nbsp; t=
ransfer template represented_port ethdev_port_id is 0 / eth / ipv6 / end</s=
pan><span style=3D"font-size:10.5pt;mso-ligatures:none"><o:p></o:p></span><=
/p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;color:#333333;mso-li=
gatures:none">flow actions_template 0 create transfer actions_template_id 1=
0&nbsp; template&nbsp; jump / end mask jump / end</span><span lang=3D"EN-US=
" style=3D"font-size:10.5pt;color:#333333;mso-ligatures:none"><o:p></o:p></=
span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;mso-l=
igatures:none"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;color:#333333;mso-li=
gatures:none">flow pattern_template 0 create pattern_template_id 11&nbsp; t=
ransfer template eth / ipv6 / end</span><span style=3D"font-size:10.5pt;mso=
-ligatures:none"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;color:#333333;mso-li=
gatures:none">flow actions_template 0 create transfer actions_template_id 1=
3 template modify_field op set dst_type ipv6_src dst_level 0 dst_offset 0 s=
rc_type value src_value
<b><i>FFFFFFFFFFFF</i></b> width 128 / represented_port / end mask modify_f=
ield op set dst_type ipv6_src dst_level 0xff dst_offset 0xffffffff src_type=
 value src_value FFFFFFFFFFFF width 0xffffffff / represented_port / end</sp=
an><span lang=3D"EN-US" style=3D"font-size:10.5pt;color:#333333;mso-ligatur=
es:none"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;mso-l=
igatures:none"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;color:#333333;mso-li=
gatures:none">flow template_table 0 create group 0 priority 0 transfer wire=
_orig table_id 0x1 rules_number 8 pattern_template 10 actions_template 10</=
span><span style=3D"font-size:10.5pt;mso-ligatures:none"><o:p></o:p></span>=
</p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;color:#333333;mso-li=
gatures:none">flow template_table 0 create group 2 priority 0 transfer tabl=
e_id 0x3 rules_number 8 pattern_template 11 actions_template 13</span><span=
 lang=3D"EN-US" style=3D"font-size:10.5pt;color:#333333;mso-ligatures:none"=
><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;mso-l=
igatures:none"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;color:#333333;mso-li=
gatures:none">flow queue 0 create 0 template_table 0x1 pattern_template 0 a=
ctions_template 0 postpone no pattern represented_port ethdev_port_id is 0 =
/ eth / ipv6 / end actions&nbsp; jump group
 2 /&nbsp; end</span><span style=3D"font-size:10.5pt;mso-ligatures:none"><o=
:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;color:#333333;mso-li=
gatures:none">flow queue 0 create 0 template_table 0x3 pattern_template 0 a=
ctions_template 0 postpone no pattern eth / ipv6&nbsp; / end actions&nbsp;m=
odify_field op set dst_type ipv6_src src_type
 value src_value 20010db8000000008a2e037073341234 width 128 / represented_p=
ort ethdev_port_id 1 / end</span><span lang=3D"EN-US" style=3D"font-size:10=
.5pt;color:#333333;mso-ligatures:none"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;mso-l=
igatures:none"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:10.5pt;color:#333333;mso-li=
gatures:none">flow push 0 queue 0</span><span style=3D"font-size:10.5pt;mso=
-ligatures:none"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><b><span style=3D"font-size:10.5pt;color:#212121">&l=
t;</span></b><b><span lang=3D"EN-US" style=3D"font-size:10.5pt;color:#21212=
1">/Install async rules changing ipv6 src address</span></b><b><span style=
=3D"font-size:10.5pt;color:#212121">&gt;</span></b><b><span lang=3D"EN-US" =
style=3D"font-size:10.5pt;color:#212121"><o:p></o:p></span></b></p>
<p class=3D"MsoNormal"><b><span lang=3D"EN-US" style=3D"font-size:10.5pt;co=
lor:#212121"><o:p>&nbsp;</o:p></span></b></p>
<p class=3D"MsoNormal"><b><span lang=3D"EN-US" style=3D"font-size:10.5pt;co=
lor:#212121"><o:p>&nbsp;</o:p></span></b></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"color:#212121">It is o=
bserved that, the src IPv6 address is changed but with the value of
</span><b><i><span style=3D"color:#333333;mso-ligatures:none">FFFF</span></=
i></b><b><i><span lang=3D"EN-US" style=3D"color:#333333;mso-ligatures:none"=
>:</span></i></b><b><i><span style=3D"color:#333333;mso-ligatures:none">FFF=
F</span></i></b><b><i><span lang=3D"EN-US" style=3D"color:#333333;mso-ligat=
ures:none">:</span></i></b><b><i><span style=3D"color:#333333;mso-ligatures=
:none">FFFF</span></i></b><b><i><span lang=3D"EN-US" style=3D"color:#333333=
;mso-ligatures:none">::</span></i></b><span lang=3D"EN-US" style=3D"color:#=
333333;mso-ligatures:none">,
 which is identical to the value used in the action template creation. Sett=
ing src_value to 0 would change the src IPv6 address to
<b>:: </b>, which does not provide a generalized modify_field action templa=
te either.</span><span lang=3D"EN-US" style=3D"color:#212121"><o:p></o:p></=
span></p>
<p class=3D"MsoNormal"><b><span lang=3D"EN-US" style=3D"font-size:10.5pt;co=
lor:#212121">&nbsp;<o:p></o:p></span></b></p>
<p class=3D"MsoNormal"><b><span lang=3D"EN-US" style=3D"font-size:10.5pt;co=
lor:#212121">&lt;Packet trace&gt;<o:p></o:p></span></b></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;color=
:#212121">11:42:57.922978 90:3c:b3:33:72:fb &gt; 04:3f:72:e8:cf:ca, etherty=
pe IPv6 (0x86dd), length 82:
<b>ffff:ffff:ffff::</b> &gt; 7a2a:bcde:e0123:e301:0:1:0:1: 192.168.129.5 &g=
t; 172.32.4.9: ICMP echo request, id 0, seq 0, length 8<o:p></o:p></span></=
p>
<p class=3D"MsoNormal"><b><span lang=3D"EN-US" style=3D"font-size:10.5pt;co=
lor:#212121">&lt;/Packet trace&gt;<o:p></o:p></span></b></p>
<p class=3D"MsoNormal"><b><span lang=3D"EN-US" style=3D"font-size:10.5pt;co=
lor:#212121"><o:p>&nbsp;</o:p></span></b></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:10.5pt;color=
:#212121"><o:p>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US">Thus, I would like to ask the c=
ommunity, if it is possible or how to create a generalized
</span><span lang=3D"EN-US" style=3D"color:#333333;mso-ligatures:none">modi=
fy_field action template to allow installation of flow rules with different=
 src IPv6 address values, as experimented above.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"color:#333333;mso-liga=
tures:none">Many thanks in advance.</span><span lang=3D"EN-US"><o:p></o:p><=
/span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:11.0pt;color=
:#212121">&nbsp;</span><span lang=3D"EN-US"><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:11.0pt">[1] =
<a href=3D"https://inbox.dpdk.org/dev/20211012080631.28504-4-viacheslavo@nv=
idia.com/">
https://inbox.dpdk.org/dev/20211012080631.28504-4-viacheslavo@nvidia.com/</=
a><o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:11.0pt"><o:p=
>&nbsp;</o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:11.0pt">Best=
 regards,<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"EN-US" style=3D"font-size:11.0pt">Tao<=
/span><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
</body>
</html>

--_000_AM0PR02MB5796C9AE81F8FBA480C7A4EB80862AM0PR02MB5796eurp_--