From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on0061.outbound.protection.outlook.com [104.47.0.61]) by dpdk.org (Postfix) with ESMTP id 701414C77 for ; Sun, 7 Oct 2018 14:58:53 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oX/mG6qhZDvqKQpO/7+lhAY7WpJUBSzHakpA0c8bdQg=; b=OF+Yzy7GMWJkOTuLTNFLB2m16O8JDQ5+f3R79Uz0SJdJYAH2WN7szpYoRi8QHmqD3CCCalcV1J5e7acell4CHOXuiy1Nl17HHiRfbl2Tfqzlcl5i7+pUA8Cxz0YuCX+hyxIL2etHiKtTx30LONho3qBeOcMZYl8uN3XUf1qhZQA= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=orika@mellanox.com; Received: from mellanox.com (37.142.13.130) by HE1PR05MB3436.eurprd05.prod.outlook.com (2603:10a6:7:33::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1207.18; Sun, 7 Oct 2018 12:58:49 +0000 From: Ori Kam To: arybchenko@solarflare.com, ferruh.yigit@intel.com, stephen@networkplumber.org, adrien.mazarguil@6wind.com Cc: dev@dpdk.org, dekelp@mellanox.com, thomas@monjalon.net, nelio.laranjeiro@6wind.com, yskoh@mellanox.com, orika@mellanox.com, shahafs@mellanox.com Date: Sun, 7 Oct 2018 12:57:34 +0000 Message-Id: <1538917054-68283-4-git-send-email-orika@mellanox.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1538917054-68283-1-git-send-email-orika@mellanox.com> References: <1537995646-95260-1-git-send-email-orika@mellanox.com> <1538917054-68283-1-git-send-email-orika@mellanox.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [37.142.13.130] X-ClientProxiedBy: LO2P265CA0119.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:c::35) To HE1PR05MB3436.eurprd05.prod.outlook.com (2603:10a6:7:33::26) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 29ee79a9-22b5-49ff-860e-08d62c54a138 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600074)(711020)(4618075)(2017052603328)(7153060)(7193020); SRVR:HE1PR05MB3436; X-Microsoft-Exchange-Diagnostics: 1; HE1PR05MB3436; 3:SOPGm6ncyU27s4m+3qAsFI52ItnCdZ9NsFusQys6FpXgDimxiYvPjLh8ObqqG/SICz+FCyrWbmBLgLdP6D6/LuSP+NnsXmV7udKXGbqSQYJDIIs0YQPV90UhCB1jjbX15gQrmpu7KamSOBPjp373CAKqOECdoFC3C2PMnq0nlAQkUERHZEXsHSu0qSxfNVRjEcQr8O7CKRotU+5/5PgoNzFIXwKUGS426apoWcOyCkTFqSEp+aE3AwxXi7CL2OcD; 25:RqIS/7nazxX1LqQOUe8DMLPHIfQ5Qn4yHEoJ8CfCNYpPErv6aM0r//r1B60TwimaPfWAT66xLa3aFoDQgDb/mfxF897SMSJeNglj5SJUR3cHzf1S55dIyI6BpMSV5URYBzaRjhh01Jsmm+TKDLKtRibZw45oOktOrluUZJCGjjOwFqpRij9mMIUkevKM0/nIWj9qbkftS31jyUyoy79/uCBymbPyq1D+c51+VTYBl9X9oPO9K05LDLfX5lYK1R5lzaPn4CX8Yc9fbYSe/seBEXKAwNmQftTzriTm4VVT9yhhweWLN8olpun0kWDrWIU1qAKvDxj1OxAysNtG/Xg9fw==; 31:nskxLL86ZcG2Ty1j71QU8gHg4IELmMd9MUQlMjeFTbo2vD3DRnm4ImjWosrc89F6HfZB1+IJ2/oHT/xRTWQx18c+kB3+VOvGnlkA76t91Z41jRSLEMvNqJ7hFaYk4t23tufa51Cm4v8uXMuO8GtzkRT5Oxal3tpZ7M7xezXQvV/NvaaCShFDBuCByo6gqLNTup1iypVXwcCMbuxBJDmNOHeARm0Xg7rrhlfEN3X+/FM= X-MS-TrafficTypeDiagnostic: HE1PR05MB3436: X-LD-Processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr X-Microsoft-Exchange-Diagnostics: 1; HE1PR05MB3436; 20:9pjayNDcW4GQ4Njt/NKfqdkFVgKY8XCgPbpKaq3akHUzUYagEtbJrnAaqeAeQeU/8pc0/jQbbQoFc+gClF9uMRqisMUbP5m7j45m5DobHX4VE9zMDDPJrqsP3MS5YrvOgt/+BMn45eEvXjPMb4uksT6gRuOHzA17fGJdFrJtTqSx3Jtw4OyvhxC9nBbDN9LyHUJb/xPF6vF4CU8WHr3+K4TBHVJ60Q2HXHIAsluzyXXUmWGpJ1l9h1JmhTfC7xU/fzWbqXcS/ZOeGw7GbyjFsL8B+ox8iMZKgB4b9/YbwzOeFInwan9OTI5lxUjEHtxPiQbVsnLfSyA3aGhG549Vxe3mD1DzyeDZogtMEA9XaOMbH1NZR2W0tDrLd+46ocKtMbulWFqnpBbjehG7XByQQI/aojut2SykfoZm3W86Y4k75F6lrUkas7O/mQk0VNMpEqNdtTHEw+bVqwuoUrlzBVNDVJqxN/wf1oLK9uS+qZ3ms47CThuVzgnaXs1dY4Kb; 4:7rZB5n09pttqDpVQiZyr8mGNj4AH8fkc1zG4BPAOquoN9n0C9aT/Kvlkb23N15RSxk5r/LGQ/A/dn2n6oH8Y/TIL/xFw52lyqTMGOXBNUsNdcMG0bpWW9bB+EG+tHowj2Q9iAM0NR1CbyoCrRxxtVaq0YS49YkOJO0h/9O9QcVG4mqA68HjHU1nIhsltkfk4Uv1aV5e+LfUwWncPWzGia0uC65wucSH5GZA03ZrQROqkrdakx5dc/0U1chpsmoTuu8BXWx0EfcOPjhUcvSAmn6xJhUq1Zb0/AiiGdz+wtl2HF0z2TnFNmNZdB+qYZpRz X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(228905959029699); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(10201501046)(93006095)(93001095)(3002001)(3231355)(944501410)(52105095)(6055026)(149066)(150057)(6041310)(20161123564045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123560045)(201708071742011)(7699051)(76991055); SRVR:HE1PR05MB3436; BCL:0; PCL:0; RULEID:; SRVR:HE1PR05MB3436; X-Forefront-PRVS: 0818724663 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(396003)(136003)(346002)(366004)(39860400002)(199004)(189003)(105586002)(76176011)(2616005)(3846002)(51416003)(7696005)(106356001)(52116002)(6116002)(386003)(55016002)(486006)(476003)(11346002)(446003)(956004)(26005)(86362001)(575784001)(305945005)(21086003)(53936002)(316002)(36756003)(69596002)(16586007)(14444005)(16526019)(186003)(8936002)(81156014)(50226002)(4326008)(478600001)(2906002)(66066001)(8676002)(4720700003)(81166006)(7736002)(6666003)(25786009)(8886007)(50466002)(68736007)(48376002)(4744004)(107886003)(97736004)(47776003)(33026002)(5660300001); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR05MB3436; H:mellanox.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; Received-SPF: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR05MB3436; 23:wJVqax/bkimDhxvUuP4yf498dsZsHwaTtkWmUKp6D?= =?us-ascii?Q?OOgrqp4uZdhJTDFloW4VsC3CTsIWcKYf46kruOKZPf7PcEU3Wml99Uoo8Q52?= =?us-ascii?Q?BI7WUdP41CKNfT+S7QGQbdqHmUSBx6nyV0bV72IfaeDJT7ZtZeWrW5l9h43x?= =?us-ascii?Q?kh9i25pSqoStHO+MQvpdyvjdknCC94aEGrpalJCSG3OGSntYI7ZsRbk/9Vvo?= =?us-ascii?Q?NMVs/Ik3/Thih7nN1fLa7X7uihintVQRfiUSKQIJabuzTY/dvD1ETtCI1Rml?= =?us-ascii?Q?1m/GHmt+zWumbow4Jf0OfiNFbruovpxiJD5RxP02upOpcQyc3rvi2zoWVi1f?= =?us-ascii?Q?hJz1QubiYs7bklJ2/Exd+knRjwIDQHgGYv+26jLlYpzdvWGtuDIpW+g4b2Rf?= =?us-ascii?Q?Al7FvK3nGpFbt4aMKloYefXwQSZWxfwcmzG87OqTXBJ6lQLr4Gpq/VuSymfX?= =?us-ascii?Q?nrLIBIqqJOkwFu/9baI69LvjcKgjkoTpamYBqwo7aHbHQmGE4E6fWmCDMg14?= =?us-ascii?Q?yN6wM/+imWA67j4f0m3QZwJAbbDaUhPL2zN14bHJnUYc+pb+NuLqNpk2mlRx?= =?us-ascii?Q?TQDpG2a6Pxo+3Di7MPnWN7gWKYdpYM1wEaS4kuqChwtpdIWVcHggMHOhlUNo?= =?us-ascii?Q?rDtEtYjPAK/kb7diTD//scl8QmGWqGktBSblz3rJ5bmKqPNSgJb8WhL0b6vr?= =?us-ascii?Q?hZ3vDljQWnvWF0U+zEABk5xlC/4t0OuZs3EivQpofXY/KmLSaNNQu4Vw8cxs?= =?us-ascii?Q?iP0NygiNqt9MhpJXRYlWkHf6ZYAa9CAT5EIjEDnUvqGqjsnVoODHugQuYd/Q?= =?us-ascii?Q?ZVpnSpGfI9emd9v9qrE/dJF3SPOrOq+JLQ21ni5WMVakOAuV/jDdMkDkpEhE?= =?us-ascii?Q?IB+FpJ9y7mk/2LNQAje6hi5bBJedQ8A6KhmYIgUmDwloaEKE3Uaf/bYwAjCG?= =?us-ascii?Q?hccKttBqret2OQ+DUKwK0hSvYr3nrDRhO4hj4sSCgCXWzvmu5dn4BhYNJS+v?= =?us-ascii?Q?Wa22vNbVl0EtYJcUzKaYIc6nZMEDb7pE+weFEezhUHAUUzVAHmOdP6KeonPw?= =?us-ascii?Q?A11h+UPVp3hZ15GrFrnrp4fykMa1DWqAXDQngH3k1Z3N22r2E4g81CfUzL+t?= =?us-ascii?Q?7qTC/8erpYOHuj2PbB41xmA0Qtf3gSxOiJwBSOci9CqDbw8cllILXTrcTwmo?= =?us-ascii?Q?aLqOjf0dbqG/OIBuRhGzzBr5aQZ12InuJmc9swFI9o8ktLDlSOmFx0CPrLNR?= =?us-ascii?Q?O0YW6Dsr/p8Ea5Z6Y9vwh0TKIbHC+q3xvp+LCL4bJ3/2ADBW0HHL2u+AztCh?= =?us-ascii?Q?abFMdnCRSXDUI55WB8t52Xa6k5DupT8pIBavNpLY8Dg?= X-Microsoft-Antispam-Message-Info: PqGfv24lZgEwAb36G3ybDw/a+AkLQ74XBL/Zf9fBLzcVQVc7jA0sNRecgBfbhyIVbuZjgYYZU2CVvJIrbEISKVREQWOQrXHMlXJUDkR/lBiFNOl45D76MNHGr0w8PF04nyOyJWG5K+2xzxdEucCg5ZwYV1pgrDAO9s/COy8RvmipK744tLmTQvwOiFb9GrUE4+WfkHrkm3PbT8S/1tSnuW4zSL2IyCIi/sazQdwRuX6yqXZMZKm6Yho6mKdrzs7xc5hxAMWcnNpcfKv9jCigAcs6PmozoUuN0EMKkWKWIFWAxoegoA1J4LiTVlYv3szmcEaKTf6h1PLBMUd0lsBshsUd/W/ZSlrFdM9DNvL08Ug= X-Microsoft-Exchange-Diagnostics: 1; HE1PR05MB3436; 6:phFRTGa2K9vjBmGDNA4X4d7X5WNPSnjzurcJgY28WEh3oFOx0WvGyKjeeXdpYc9+pKTTk5/NFV7MqjuHoUm7LQO/r0C3CUG7nrDMTT8dTqz8hSj52cyEAwxKuSpUWGeMiL+A0oxpUSK9ILKgmU23RC61NMZQBPRJgBUDyQWQ+cAOAOrevYVZ2WwQmTd/nSpxr+7FGwCqqIj1yDnAu7Cm5F/zXfnewm11Y9JkFGQoImdxlTGCzfVvurK51o0TBKNNNWxlpsumzP1M1l8K7prn/+QkIdXiS2DRCAFnICYJRFVFHCkdaWHhkdjt8lAHpi701pA/eJxNLiLDrIn0Soc81PAx7TZORkpAA6O5V4kMx1Qs1vFAJg/oIq4s4uiM17y+FnsSY+21h/js1EkOCp4I1cfnw1NsfnT0Qs2NR8zQ1tITkqGSy6UxYP7zV5/4Pkcwi2FufWnMAdO7vwLzVffgiA==; 5:cNCwRkL/poKXS9SnmytS5oNtJO5wwotiVbyEoWE9hDVFO2TKCyOCi4cdpchmofb/2l2OkRubkadliDQLJow5ldV+HPzk0/P+YRnSuj5undSz447ht9f23461o8SK48nGQM6WF0xvSbT9nKXQVyX1FZwHUHFzXcbgslzJ6eZivwY=; 7:0q7X75MqWeI7gf8AU90OxepQts20dJdmZr0+U9M7ughJDX4OMVX7pMPtMAD3tStF9Daf7sw8h5iu79Ob81+OUEgvLewLUPIEdSeKfZhFsnOLMIf0PWhmNexeBXGSXtT1Zm6Ss8gSsvftL1g+tiuJpM5ebpATUNL5BfXE2mB7LIKvhLAaoOwP0KgOvYbeRLQ7nEhKgvIuvQkljigXVqt97ygJWx1TW6M3CTyhm5qx/l2m8jPJlL53ZFQw4sVv+y+r SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Oct 2018 12:58:49.9777 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 29ee79a9-22b5-49ff-860e-08d62c54a138 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR05MB3436 Subject: [dpdk-dev] [PATCH v3 3/3] ethdev: remove vxlan and nvgre encapsulation commands 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: , X-List-Received-Date: Sun, 07 Oct 2018 12:58:53 -0000 This patch removes the VXLAN and NVGRE encapsulation commands. Those commands are subset of the TUNNEL_ENCAP command so there is no need to keep both versions. Signed-off-by: Ori Kam Acked-by: Mohammad Abdul Awal --- doc/guides/prog_guide/rte_flow.rst | 107 ------------------------------------- lib/librte_ethdev/rte_flow.c | 37 ------------- lib/librte_ethdev/rte_flow.h | 103 ----------------------------------- 3 files changed, 247 deletions(-) diff --git a/doc/guides/prog_guide/rte_flow.rst b/doc/guides/prog_guide/rte_flow.rst index 497afc2..126e5d3 100644 --- a/doc/guides/prog_guide/rte_flow.rst +++ b/doc/guides/prog_guide/rte_flow.rst @@ -1969,113 +1969,6 @@ Implements ``OFPAT_PUSH_MPLS`` ("push a new MPLS tag") as defined by the | ``ethertype`` | EtherType | +---------------+-----------+ -Action: ``VXLAN_ENCAP`` -^^^^^^^^^^^^^^^^^^^^^^^ - -Performs a VXLAN encapsulation action by encapsulating the matched flow in the -VXLAN tunnel as defined in the``rte_flow_action_vxlan_encap`` flow items -definition. - -This action modifies the payload of matched flows. The flow definition specified -in the ``rte_flow_action_tunnel_encap`` action structure must define a valid -VLXAN network overlay which conforms with RFC 7348 (Virtual eXtensible Local -Area Network (VXLAN): A Framework for Overlaying Virtualized Layer 2 Networks -over Layer 3 Networks). The pattern must be terminated with the -RTE_FLOW_ITEM_TYPE_END item type. - -.. _table_rte_flow_action_vxlan_encap: - -.. table:: VXLAN_ENCAP - - +----------------+-------------------------------------+ - | Field | Value | - +================+=====================================+ - | ``definition`` | Tunnel end-point overlay definition | - +----------------+-------------------------------------+ - -.. _table_rte_flow_action_vxlan_encap_example: - -.. table:: IPv4 VxLAN flow pattern example. - - +-------+----------+ - | Index | Item | - +=======+==========+ - | 0 | Ethernet | - +-------+----------+ - | 1 | IPv4 | - +-------+----------+ - | 2 | UDP | - +-------+----------+ - | 3 | VXLAN | - +-------+----------+ - | 4 | END | - +-------+----------+ - -Action: ``VXLAN_DECAP`` -^^^^^^^^^^^^^^^^^^^^^^^ - -Performs a decapsulation action by stripping all headers of the VXLAN tunnel -network overlay from the matched flow. - -The flow items pattern defined for the flow rule with which a ``VXLAN_DECAP`` -action is specified, must define a valid VXLAN tunnel as per RFC7348. If the -flow pattern does not specify a valid VXLAN tunnel then a -RTE_FLOW_ERROR_TYPE_ACTION error should be returned. - -This action modifies the payload of matched flows. - -Action: ``NVGRE_ENCAP`` -^^^^^^^^^^^^^^^^^^^^^^^ - -Performs a NVGRE encapsulation action by encapsulating the matched flow in the -NVGRE tunnel as defined in the``rte_flow_action_tunnel_encap`` flow item -definition. - -This action modifies the payload of matched flows. The flow definition specified -in the ``rte_flow_action_tunnel_encap`` action structure must defined a valid -NVGRE network overlay which conforms with RFC 7637 (NVGRE: Network -Virtualization Using Generic Routing Encapsulation). The pattern must be -terminated with the RTE_FLOW_ITEM_TYPE_END item type. - -.. _table_rte_flow_action_nvgre_encap: - -.. table:: NVGRE_ENCAP - - +----------------+-------------------------------------+ - | Field | Value | - +================+=====================================+ - | ``definition`` | NVGRE end-point overlay definition | - +----------------+-------------------------------------+ - -.. _table_rte_flow_action_nvgre_encap_example: - -.. table:: IPv4 NVGRE flow pattern example. - - +-------+----------+ - | Index | Item | - +=======+==========+ - | 0 | Ethernet | - +-------+----------+ - | 1 | IPv4 | - +-------+----------+ - | 2 | NVGRE | - +-------+----------+ - | 3 | END | - +-------+----------+ - -Action: ``NVGRE_DECAP`` -^^^^^^^^^^^^^^^^^^^^^^^ - -Performs a decapsulation action by stripping all headers of the NVGRE tunnel -network overlay from the matched flow. - -The flow items pattern defined for the flow rule with which a ``NVGRE_DECAP`` -action is specified, must define a valid NVGRE tunnel as per RFC7637. If the -flow pattern does not specify a valid NVGRE tunnel then a -RTE_FLOW_ERROR_TYPE_ACTION error should be returned. - -This action modifies the payload of matched flows. - Action: ``TUNNEL_ENCAP`` ^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/lib/librte_ethdev/rte_flow.c b/lib/librte_ethdev/rte_flow.c index 4b548b8..8a2e074 100644 --- a/lib/librte_ethdev/rte_flow.c +++ b/lib/librte_ethdev/rte_flow.c @@ -119,10 +119,6 @@ struct rte_flow_desc_data { sizeof(struct rte_flow_action_of_pop_mpls)), MK_FLOW_ACTION(OF_PUSH_MPLS, sizeof(struct rte_flow_action_of_push_mpls)), - MK_FLOW_ACTION(VXLAN_ENCAP, sizeof(struct rte_flow_action_vxlan_encap)), - MK_FLOW_ACTION(VXLAN_DECAP, 0), - MK_FLOW_ACTION(NVGRE_ENCAP, sizeof(struct rte_flow_action_vxlan_encap)), - MK_FLOW_ACTION(NVGRE_DECAP, 0), MK_FLOW_ACTION(TUNNEL_ENCAP, sizeof(struct rte_flow_action_tunnel_encap)), MK_FLOW_ACTION(TUNNEL_DECAP, 0), @@ -427,16 +423,11 @@ enum rte_flow_conv_item_spec_type { switch (action->type) { union { const struct rte_flow_action_rss *rss; - const struct rte_flow_action_vxlan_encap *vxlan_encap; - const struct rte_flow_action_nvgre_encap *nvgre_encap; } src; union { struct rte_flow_action_rss *rss; - struct rte_flow_action_vxlan_encap *vxlan_encap; - struct rte_flow_action_nvgre_encap *nvgre_encap; } dst; size_t tmp; - int ret; case RTE_FLOW_ACTION_TYPE_RSS: src.rss = action->conf; @@ -470,34 +461,6 @@ enum rte_flow_conv_item_spec_type { off += tmp; } break; - case RTE_FLOW_ACTION_TYPE_VXLAN_ENCAP: - case RTE_FLOW_ACTION_TYPE_NVGRE_ENCAP: - src.vxlan_encap = action->conf; - dst.vxlan_encap = buf; - RTE_BUILD_BUG_ON(sizeof(*src.vxlan_encap) != - sizeof(*src.nvgre_encap) || - offsetof(struct rte_flow_action_vxlan_encap, - definition) != - offsetof(struct rte_flow_action_nvgre_encap, - definition)); - off = sizeof(*dst.vxlan_encap); - if (src.vxlan_encap->definition) { - off = RTE_ALIGN_CEIL - (off, sizeof(*dst.vxlan_encap->definition)); - ret = rte_flow_conv - (RTE_FLOW_CONV_OP_PATTERN, - (void *)((uintptr_t)dst.vxlan_encap + off), - size > off ? size - off : 0, - src.vxlan_encap->definition, NULL); - if (ret < 0) - return 0; - if (size >= off + ret) - dst.vxlan_encap->definition = - (void *)((uintptr_t)dst.vxlan_encap + - off); - off += ret; - } - break; default: off = rte_flow_desc_action[action->type].size; rte_memcpy(buf, action->conf, (size > off ? off : size)); diff --git a/lib/librte_ethdev/rte_flow.h b/lib/librte_ethdev/rte_flow.h index 76b4759..0e7e0a2 100644 --- a/lib/librte_ethdev/rte_flow.h +++ b/lib/librte_ethdev/rte_flow.h @@ -1474,40 +1474,6 @@ enum rte_flow_action_type { RTE_FLOW_ACTION_TYPE_OF_PUSH_MPLS, /** - * Encapsulate flow in VXLAN tunnel as defined in - * rte_flow_action_vxlan_encap action structure. - * - * See struct rte_flow_action_vxlan_encap. - */ - RTE_FLOW_ACTION_TYPE_VXLAN_ENCAP, - - /** - * Decapsulate outer most VXLAN tunnel from matched flow. - * - * If flow pattern does not define a valid VXLAN tunnel (as specified by - * RFC7348) then the PMD should return a RTE_FLOW_ERROR_TYPE_ACTION - * error. - */ - RTE_FLOW_ACTION_TYPE_VXLAN_DECAP, - - /** - * Encapsulate flow in NVGRE tunnel defined in the - * rte_flow_action_nvgre_encap action structure. - * - * See struct rte_flow_action_nvgre_encap. - */ - RTE_FLOW_ACTION_TYPE_NVGRE_ENCAP, - - /** - * Decapsulate outer most NVGRE tunnel from matched flow. - * - * If flow pattern does not define a valid NVGRE tunnel (as specified by - * RFC7637) then the PMD should return a RTE_FLOW_ERROR_TYPE_ACTION - * error. - */ - RTE_FLOW_ACTION_TYPE_NVGRE_DECAP, - - /** * Encapsulate the packet with tunnel header as defined in * rte_flow_action_tunnel_encap action structure. * @@ -1838,75 +1804,6 @@ struct rte_flow_action_of_push_mpls { * @warning * @b EXPERIMENTAL: this structure may change without prior notice * - * RTE_FLOW_ACTION_TYPE_VXLAN_ENCAP - * - * VXLAN tunnel end-point encapsulation data definition - * - * The tunnel definition is provided through the flow item pattern, the - * provided pattern must conform to RFC7348 for the tunnel specified. The flow - * definition must be provided in order from the RTE_FLOW_ITEM_TYPE_ETH - * definition up the end item which is specified by RTE_FLOW_ITEM_TYPE_END. - * - * The mask field allows user to specify which fields in the flow item - * definitions can be ignored and which have valid data and can be used - * verbatim. - * - * Note: the last field is not used in the definition of a tunnel and can be - * ignored. - * - * Valid flow definition for RTE_FLOW_ACTION_TYPE_VXLAN_ENCAP include: - * - * - ETH / IPV4 / UDP / VXLAN / END - * - ETH / IPV6 / UDP / VXLAN / END - * - ETH / VLAN / IPV4 / UDP / VXLAN / END - * - */ -struct rte_flow_action_vxlan_encap { - /** - * Encapsulating vxlan tunnel definition - * (terminated by the END pattern item). - */ - struct rte_flow_item *definition; -}; - -/** - * @warning - * @b EXPERIMENTAL: this structure may change without prior notice - * - * RTE_FLOW_ACTION_TYPE_NVGRE_ENCAP - * - * NVGRE tunnel end-point encapsulation data definition - * - * The tunnel definition is provided through the flow item pattern the - * provided pattern must conform with RFC7637. The flow definition must be - * provided in order from the RTE_FLOW_ITEM_TYPE_ETH definition up the end item - * which is specified by RTE_FLOW_ITEM_TYPE_END. - * - * The mask field allows user to specify which fields in the flow item - * definitions can be ignored and which have valid data and can be used - * verbatim. - * - * Note: the last field is not used in the definition of a tunnel and can be - * ignored. - * - * Valid flow definition for RTE_FLOW_ACTION_TYPE_NVGRE_ENCAP include: - * - * - ETH / IPV4 / NVGRE / END - * - ETH / VLAN / IPV6 / NVGRE / END - * - */ -struct rte_flow_action_nvgre_encap { - /** - * Encapsulating vxlan tunnel definition - * (terminated by the END pattern item). - */ - struct rte_flow_item *definition; -}; - -/** - * @warning - * @b EXPERIMENTAL: this structure may change without prior notice - * * RTE_FLOW_ACTION_TYPE_TUNNEL_ENCAP * * Tunnel end-point encapsulation data definition -- 1.8.3.1