Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/139437/?format=api
http://patches.dpdk.org/api/patches/139437/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/patch/20240417072304.3260172-3-michaelba@nvidia.com/", "project": { "id": 1, "url": "http://patches.dpdk.org/api/projects/1/?format=api", "name": "DPDK", "link_name": "dpdk", "list_id": "dev.dpdk.org", "list_email": "dev@dpdk.org", "web_url": "http://core.dpdk.org", "scm_url": "git://dpdk.org/dpdk", "webscm_url": "http://git.dpdk.org/dpdk", "list_archive_url": "https://inbox.dpdk.org/dev", "list_archive_url_format": "https://inbox.dpdk.org/dev/{}", "commit_url_format": "" }, "msgid": "<20240417072304.3260172-3-michaelba@nvidia.com>", "list_archive_url": "https://inbox.dpdk.org/dev/20240417072304.3260172-3-michaelba@nvidia.com", "date": "2024-04-17T07:23:04", "name": "[RFC,2/2] ethdev: add data size field to GENEVE option item", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "bafb63ffa107e78e9d77beb75174b50274394d79", "submitter": { "id": 1949, "url": "http://patches.dpdk.org/api/people/1949/?format=api", "name": "Michael Baum", "email": "michaelba@nvidia.com" }, "delegate": { "id": 319, "url": "http://patches.dpdk.org/api/users/319/?format=api", "username": "fyigit", "first_name": "Ferruh", "last_name": "Yigit", "email": "ferruh.yigit@amd.com" }, "mbox": "http://patches.dpdk.org/project/dpdk/patch/20240417072304.3260172-3-michaelba@nvidia.com/mbox/", "series": [ { "id": 31765, "url": "http://patches.dpdk.org/api/series/31765/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=31765", "date": "2024-04-17T07:23:02", "name": "ethdev: update GENEVE option item structure", "version": 1, "mbox": "http://patches.dpdk.org/series/31765/mbox/" } ], "comments": "http://patches.dpdk.org/api/patches/139437/comments/", "check": "success", "checks": "http://patches.dpdk.org/api/patches/139437/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id AF77C43E8E;\n\tWed, 17 Apr 2024 09:23:41 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id C4964406B8;\n\tWed, 17 Apr 2024 09:23:35 +0200 (CEST)", "from NAM11-BN8-obe.outbound.protection.outlook.com\n (mail-bn8nam11on2043.outbound.protection.outlook.com [40.107.236.43])\n by mails.dpdk.org (Postfix) with ESMTP id B8E6A406B8\n for <dev@dpdk.org>; Wed, 17 Apr 2024 09:23:33 +0200 (CEST)", "from CH5PR02CA0009.namprd02.prod.outlook.com (2603:10b6:610:1ed::10)\n by LV3PR12MB9258.namprd12.prod.outlook.com (2603:10b6:408:1bb::12)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7472.37; Wed, 17 Apr\n 2024 07:23:29 +0000", "from DS3PEPF000099DE.namprd04.prod.outlook.com\n (2603:10b6:610:1ed:cafe::92) by CH5PR02CA0009.outlook.office365.com\n (2603:10b6:610:1ed::10) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7495.23 via Frontend\n Transport; Wed, 17 Apr 2024 07:23:29 +0000", "from mail.nvidia.com (216.228.117.160) by\n DS3PEPF000099DE.mail.protection.outlook.com (10.167.17.200) with Microsoft\n SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.20.7452.22 via Frontend Transport; Wed, 17 Apr 2024 07:23:29 +0000", "from rnnvmail203.nvidia.com (10.129.68.9) by mail.nvidia.com\n (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.41; Wed, 17 Apr\n 2024 00:23:15 -0700", "from rnnvmail201.nvidia.com (10.129.68.8) by rnnvmail203.nvidia.com\n (10.129.68.9) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Wed, 17 Apr\n 2024 00:23:14 -0700", "from nvidia.com (10.127.8.13) by mail.nvidia.com (10.129.68.8) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1258.12 via Frontend\n Transport; Wed, 17 Apr 2024 00:23:13 -0700" ], "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=URE/epfxMhd+K3ywQuYzFQ5FLTNU9AdIw2dw3OjqM+GGNZjj9KRk8Wck/goDTt9oM/565ARI6AO9pQgtfrutPq2IiPnJXf0oL7sJGwIkG/1dRVJDqc7MSSB6shaEufInnDlshaTk9szNc5/3DsDQFvwQfuOC3cfNw7GiNqR4kvg7CzAzjYs7XbnDOHfcHl+cfnykcvi0q/7uBh5JFzxIbfmK+OmUB88SHK5tY4YOYutolu0nR0bHx5TKKgcR4T6jpKFL8flNcZeIZYNZVqcTmJiefIsnMaMMbm5xDx+4t+PVz/ZhXkNs51pFXlMEjRrme/Ka7HF9MzH7ynVnb4JscA==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\n 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;\n bh=vnpaSibvuf3jHporDpIkNhAI5Vl3OzZLeoO1y5kR8Tg=;\n b=jjl+bTW6c8oVzW50qYtZWpYRsfsPiIXprfPOnqlHmFRDieFCyK6iklhWk9w5cRexnGXTZZwd6lfJ3XnaZOjavY5pMP7TO6/54FhaIwlc64XR+ysEeRWBcTY2/pubDlRI83RtmDxDwaLYTOIRguba9zKMvOXV4/p7CDJRMLR8j+dldQkbdqRwBG9H3NeK3x5/bPzhwT89bRdS9T3bfFDc4w8jV9la0B1yU3yV1ZHK5VBNpYis1c3L3F4AHHESs2Al/8HAHsJQOAfRhKdYW8UGlKh5+T3+PjQGxrgOFT4XHFLKjNNOd4l01BoBRRa2LhUMdt5udRmVzyiveKAIQTKCHw==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass (sender ip is\n 216.228.117.160) smtp.rcpttodomain=dpdk.org smtp.mailfrom=nvidia.com;\n dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com;\n dkim=none (message not signed); arc=none (0)", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com;\n s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=vnpaSibvuf3jHporDpIkNhAI5Vl3OzZLeoO1y5kR8Tg=;\n b=nsnQ0fhrdy5wKViYDCI96ZqX//HG8D9a5X3uwXLRrkosKnjIJRT3p46pHe0ADc871e+jzw/Q5eeUPVxTCzlq08UOsFhdOeEwTr/EW7nKJrDR6Uokkv1iPzK8IJyK9d52QHpSAFKWw2alMK0BWRpwiZSRzR1ACXwgyFlmHemD28N9tCqFtEI+hpXnhidjZlLyM2guA6dZQDMpbOTtn/fTgyA3xlhJmzqSjlmeLCs9v6w/6sNF+e4g4/smSjBi/BEbQuyCbDs/QSNjXeJ6TOaOy8smN2B9S6PS294ZNtO55LJgnZqbPle8fpQBegIh6WsRm9pp/hxT5yWb/iAy0wtJFw==", "X-MS-Exchange-Authentication-Results": "spf=pass (sender IP is 216.228.117.160)\n smtp.mailfrom=nvidia.com;\n dkim=none (message not signed)\n header.d=none;dmarc=pass action=none header.from=nvidia.com;", "Received-SPF": "Pass (protection.outlook.com: domain of nvidia.com designates\n 216.228.117.160 as permitted sender) receiver=protection.outlook.com;\n client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C", "From": "Michael Baum <michaelba@nvidia.com>", "To": "<dev@dpdk.org>", "CC": "Dariusz Sosnowski <dsosnowski@nvidia.com>, Thomas Monjalon\n <thomas@monjalon.net>, Ferruh Yigit <ferruh.yigit@amd.com>, Ori Kam\n <orika@nvidia.com>", "Subject": "[RFC 2/2] ethdev: add data size field to GENEVE option item", "Date": "Wed, 17 Apr 2024 10:23:04 +0300", "Message-ID": "<20240417072304.3260172-3-michaelba@nvidia.com>", "X-Mailer": "git-send-email 2.25.1", "In-Reply-To": "<20240417072304.3260172-1-michaelba@nvidia.com>", "References": "<20240417072304.3260172-1-michaelba@nvidia.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "Content-Type": "text/plain", "X-NV-OnPremToCloud": "ExternallySecured", "X-EOPAttributedMessage": "0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "DS3PEPF000099DE:EE_|LV3PR12MB9258:EE_", "X-MS-Office365-Filtering-Correlation-Id": "f2f31199-8ecb-4313-af52-08dc5eaf47bf", "X-LD-Processed": "43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;", "X-Microsoft-Antispam-Message-Info": "\n /hT8Z2/amjda2cQ/dqoeTogXJH3JAZFsgAbBVzgv8Hsf4iSrl9NXuw5+qC2hhvF9wRMYF8V8ijvDhLQzlzgryjSsfErcd+TdUE9wdC1J/TjGJgQDKE9htIiiiIV4fWDdG0ZvSj9KiFbqHemCfQ433g7xIh6GjpzPFN9nm4e8bUnmd9il+oeM6/LmCHNUiL2w+17Lu7X6MaQCf5U0TBeMDWEe8E+RNwnt7vL77Bc37o6koxJ7LeSoggqaAungsFRfDahzHftVXRAUp7zY0I00ajqmyn+obpNNrJNWdlgiTZHjzFQrHJxtU2D5/roA01cetX2D+myQwfXwGo+iuigcm6PhOEzbIo78WeFhDQPKreXluKd2iEOzchOIqNiiiFe9CtxGI+jBuv6BFFbQ5TZ6sGp0rDjohlhL850irHTLiDukfYvn3tnKH66P5Nx9NNqCB4vrq812surA/VcR/dzCjTgfolTB5+/2/4o5EGNEuYI9LcGcJS83xOWvVeWDlr6Pnr95fnsEYqgcEmzkXkh+t3YxPE2xZP34QrKGoHmH9P+rPlzDCkMiqhX8NfU13q5WmoN4FOxLUtwvBctzVB3xieAb0ndMGpNyncpxcxwrymDhEz1eRWSd06HifvrvsggFly9sHP8BMmGmw6pRwikyOugBVd5WtmPqcdYTqX0nSF7PiezULHr9d7yCjSGkoVpfzAuaPz8uFg9Y07aSfPVfbfoLXBCtC+YdfT1msLCrCqW2bCyT2NWk5hBYfd3qf1jY", "X-Forefront-Antispam-Report": "CIP:216.228.117.160; CTRY:US; LANG:en; SCL:1;\n SRV:;\n IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge1.nvidia.com; CAT:NONE;\n SFS:(13230031)(36860700004)(82310400014)(376005)(1800799015); DIR:OUT;\n SFP:1101;", "X-OriginatorOrg": "Nvidia.com", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "17 Apr 2024 07:23:29.4393 (UTC)", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n f2f31199-8ecb-4313-af52-08dc5eaf47bf", "X-MS-Exchange-CrossTenant-Id": "43083d15-7273-40c1-b7db-39efd9ccc17a", "X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp": "\n TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.117.160];\n Helo=[mail.nvidia.com]", "X-MS-Exchange-CrossTenant-AuthSource": "\n DS3PEPF000099DE.namprd04.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous", "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "LV3PR12MB9258", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "content": "The \"rte_flow_item_geneve_opt\" structure has field for option length.\nThis field has 2 different usages which might limit each other:\n\n 1. field to matching with value/mask.\n 2. descriptor for data array size.\n\nThis patch adds a new field \"data_array_size\" into\n\"rte_flow_item_geneve_opt\" structure in addition to existing\n\"option_len\" field.\n\nSigned-off-by: Michael Baum <michaelba@nvidia.com>\n---\n app/test-pmd/cmdline_flow.c | 10 ++++++\n doc/guides/prog_guide/rte_flow.rst | 16 +++++++++\n doc/guides/testpmd_app_ug/testpmd_funcs.rst | 3 +-\n lib/ethdev/rte_flow.c | 36 ++++++++++-----------\n lib/ethdev/rte_flow.h | 3 +-\n 5 files changed, 47 insertions(+), 21 deletions(-)", "diff": "diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c\nindex 60ee9337cf..966a47936a 100644\n--- a/app/test-pmd/cmdline_flow.c\n+++ b/app/test-pmd/cmdline_flow.c\n@@ -492,6 +492,7 @@ enum index {\n \tITEM_GENEVE_OPT_TYPE,\n \tITEM_GENEVE_OPT_LENGTH,\n \tITEM_GENEVE_OPT_DATA,\n+\tITEM_GENEVE_OPT_DATA_ARRAY_SIZE,\n \tITEM_INTEGRITY,\n \tITEM_INTEGRITY_LEVEL,\n \tITEM_INTEGRITY_VALUE,\n@@ -2032,6 +2033,7 @@ static const enum index item_geneve_opt[] = {\n \tITEM_GENEVE_OPT_TYPE,\n \tITEM_GENEVE_OPT_LENGTH,\n \tITEM_GENEVE_OPT_DATA,\n+\tITEM_GENEVE_OPT_DATA_ARRAY_SIZE,\n \tITEM_NEXT,\n \tZERO,\n };\n@@ -5772,6 +5774,14 @@ static const struct token token_list[] = {\n \t\t\t\t(sizeof(struct rte_flow_item_geneve_opt),\n \t\t\t\tITEM_GENEVE_OPT_DATA_SIZE)),\n \t},\n+\t[ITEM_GENEVE_OPT_DATA_ARRAY_SIZE] = {\n+\t\t.name = \"data_size\",\n+\t\t.help = \"GENEVE option data array size\",\n+\t\t.next = NEXT(item_geneve_opt, NEXT_ENTRY(COMMON_UNSIGNED),\n+\t\t\t item_param),\n+\t\t.args = ARGS(ARGS_ENTRY(struct rte_flow_item_geneve_opt,\n+\t\t\t\t\tdata_array_size)),\n+\t},\n \t[ITEM_INTEGRITY] = {\n \t\t.name = \"integrity\",\n \t\t.help = \"match packet integrity\",\ndiff --git a/doc/guides/prog_guide/rte_flow.rst b/doc/guides/prog_guide/rte_flow.rst\nindex dad588763f..cce02fe1d6 100644\n--- a/doc/guides/prog_guide/rte_flow.rst\n+++ b/doc/guides/prog_guide/rte_flow.rst\n@@ -1092,6 +1092,22 @@ Matches a GENEVE header.\n - ``rsvd1``: reserved, normally 0x00.\n - Default ``mask`` matches VNI only.\n \n+\n+Item: ``GENEVE_OPT``\n+^^^^^^^^^^^^^^^^^^^^\n+\n+Matches a GENEVE TLV option header.\n+\n+- ``option_class``: option class ID.\n+- ``option_type``: option type.\n+- ``option_len``: option data length in 4-bytes granularity.\n+- ``data``: option data array.\n+- ``data_array_size``: option data array size.\n+ This field is not matchable, it is descriptor how to read the array.\n+ It should be specified in ``mask`` as well.\n+- Default ``mask`` matches type only.\n+\n+\n Item: ``VXLAN-GPE``\n ^^^^^^^^^^^^^^^^^^^\n \ndiff --git a/doc/guides/testpmd_app_ug/testpmd_funcs.rst b/doc/guides/testpmd_app_ug/testpmd_funcs.rst\nindex 2fbf9220d8..97623044e9 100644\n--- a/doc/guides/testpmd_app_ug/testpmd_funcs.rst\n+++ b/doc/guides/testpmd_app_ug/testpmd_funcs.rst\n@@ -3743,7 +3743,8 @@ This section lists supported pattern items and their attributes, if any.\n - ``type {unsigned}``: GENEVE option type.\n - ``length {unsigned}``: GENEVE option length in 32-bit words.\n - ``data {hex string}``: GENEVE option data, the length is defined by\n- ``length`` field.\n+ ``data_size`` field.\n+ - ``data_size {unsigned}``: GENEVE option data size in 32-bit words.\n \n - ``vxlan-gpe``: match VXLAN-GPE header.\n \ndiff --git a/lib/ethdev/rte_flow.c b/lib/ethdev/rte_flow.c\nindex 2803507462..d68359961d 100644\n--- a/lib/ethdev/rte_flow.c\n+++ b/lib/ethdev/rte_flow.c\n@@ -81,6 +81,21 @@ rte_flow_item_flex_conv(void *buf, const void *data)\n \treturn src->length;\n }\n \n+static size_t\n+rte_flow_item_geneve_opt_conv(void *buf, const void *data)\n+{\n+\tconst struct rte_flow_item_geneve_opt *src = data;\n+\tuint16_t byte_size = src->data_array_size << 2;\n+\n+\tif (buf) {\n+\t\tstruct rte_flow_item_geneve_opt *dst = buf;\n+\t\tvoid *deep_src = (void *)((uintptr_t)(dst + 1));\n+\n+\t\tdst->data = rte_memcpy(deep_src, src->data, byte_size);\n+\t}\n+\treturn byte_size;\n+}\n+\n /** Generate flow_item[] entry. */\n #define MK_FLOW_ITEM(t, s) \\\n \t[RTE_FLOW_ITEM_TYPE_ ## t] = { \\\n@@ -155,7 +170,8 @@ static const struct rte_flow_desc_data rte_flow_desc_item[] = {\n \tMK_FLOW_ITEM(L2TPV3OIP, sizeof(struct rte_flow_item_l2tpv3oip)),\n \tMK_FLOW_ITEM(PFCP, sizeof(struct rte_flow_item_pfcp)),\n \tMK_FLOW_ITEM(ECPRI, sizeof(struct rte_flow_item_ecpri)),\n-\tMK_FLOW_ITEM(GENEVE_OPT, sizeof(struct rte_flow_item_geneve_opt)),\n+\tMK_FLOW_ITEM_FN(GENEVE_OPT, sizeof(struct rte_flow_item_geneve_opt),\n+\t\t\trte_flow_item_geneve_opt_conv),\n \tMK_FLOW_ITEM(INTEGRITY, sizeof(struct rte_flow_item_integrity)),\n \tMK_FLOW_ITEM(CONNTRACK, sizeof(uint32_t)),\n \tMK_FLOW_ITEM(PORT_REPRESENTOR, sizeof(struct rte_flow_item_ethdev)),\n@@ -622,7 +638,6 @@ rte_flow_conv_item_spec(void *buf, const size_t size,\n \tswitch (item->type) {\n \t\tunion {\n \t\t\tconst struct rte_flow_item_raw *raw;\n-\t\t\tconst struct rte_flow_item_geneve_opt *geneve_opt;\n \t\t} spec;\n \t\tunion {\n \t\t\tconst struct rte_flow_item_raw *raw;\n@@ -632,11 +647,9 @@ rte_flow_conv_item_spec(void *buf, const size_t size,\n \t\t} mask;\n \t\tunion {\n \t\t\tconst struct rte_flow_item_raw *raw;\n-\t\t\tconst struct rte_flow_item_geneve_opt *geneve_opt;\n \t\t} src;\n \t\tunion {\n \t\t\tstruct rte_flow_item_raw *raw;\n-\t\t\tstruct rte_flow_item_geneve_opt *geneve_opt;\n \t\t} dst;\n \t\tvoid *deep_src;\n \t\tsize_t tmp;\n@@ -676,21 +689,6 @@ rte_flow_conv_item_spec(void *buf, const size_t size,\n \t\t\toff += tmp;\n \t\t}\n \t\tbreak;\n-\tcase RTE_FLOW_ITEM_TYPE_GENEVE_OPT:\n-\t\toff = rte_flow_conv_copy(buf, data, size,\n-\t\t\t\t\t rte_flow_desc_item, item->type);\n-\t\tspec.geneve_opt = item->spec;\n-\t\tsrc.geneve_opt = data;\n-\t\tdst.geneve_opt = buf;\n-\t\ttmp = spec.geneve_opt->option_len << 2;\n-\t\tif (size > 0 && src.geneve_opt->data) {\n-\t\t\tdeep_src = (void *)((uintptr_t)(dst.geneve_opt + 1));\n-\t\t\tdst.geneve_opt->data = rte_memcpy(deep_src,\n-\t\t\t\t\t\t\t src.geneve_opt->data,\n-\t\t\t\t\t\t\t tmp);\n-\t\t}\n-\t\toff += tmp;\n-\t\tbreak;\n \tdefault:\n \t\toff = rte_flow_conv_copy(buf, data, size,\n \t\t\t\t\t rte_flow_desc_item, item->type);\ndiff --git a/lib/ethdev/rte_flow.h b/lib/ethdev/rte_flow.h\nindex 6e8ab1d4c7..0ccb7562bd 100644\n--- a/lib/ethdev/rte_flow.h\n+++ b/lib/ethdev/rte_flow.h\n@@ -1876,7 +1876,8 @@ struct rte_flow_item_geneve_opt {\n \trte_be16_t option_class;\n \tuint8_t option_type;\n \tuint8_t option_len;\n-\tuint32_t *data;\n+\trte_be32_t *data;\n+\tuint8_t data_array_size;\n };\n \n /** Default mask for RTE_FLOW_ITEM_TYPE_GENEVE_OPT. */\n", "prefixes": [ "RFC", "2/2" ] }{ "id": 139437, "url": "