From patchwork Wed Dec 29 08:35:17 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eli Britstein X-Patchwork-Id: 1573911 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: bilbo.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256 header.s=selector2 header.b=owHYEGxc; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org (client-ip=140.211.166.136; helo=smtp3.osuosl.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Received: from smtp3.osuosl.org (smtp3.osuosl.org [140.211.166.136]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4JP4Vd6y2Dz9sPC for ; Wed, 29 Dec 2021 19:35:53 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id DE86360BA7; Wed, 29 Dec 2021 08:35:51 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp3.osuosl.org ([127.0.0.1]) by localhost (smtp3.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id J3UIWxcGIJYz; Wed, 29 Dec 2021 08:35:51 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by smtp3.osuosl.org (Postfix) with ESMTPS id 1F1EC60B09; Wed, 29 Dec 2021 08:35:50 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id CBE0AC0039; Wed, 29 Dec 2021 08:35:49 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@lists.linuxfoundation.org Received: from smtp1.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by lists.linuxfoundation.org (Postfix) with ESMTP id 01EC3C006F for ; Wed, 29 Dec 2021 08:35:48 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id F2D6581BCB for ; Wed, 29 Dec 2021 08:35:47 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Authentication-Results: smtp1.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=nvidia.com Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 28jGKn6IfqgF for ; Wed, 29 Dec 2021 08:35:46 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2060.outbound.protection.outlook.com [40.107.93.60]) by smtp1.osuosl.org (Postfix) with ESMTPS id C570B81A8E for ; Wed, 29 Dec 2021 08:35:46 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IHkOAusMI8gAWVLrw27LZ+o4BCrvzVlljXUbgjWxZGUjKdz+oaJYAhjjy4PHniTsp178RelBcVZHUQ7w0VMZ8Q7hW9U+MqIMBY7xkTuIinWVr2IhkuFZVlNEbD0h1p27YSwJp2Q61fpQAYYZ2P8x4A/eR7h7v7L1im72uSynoVWphT9vkvxEVYXa6ngQGUIQTqCLC8cruTZIveK+vvoJlgI5lFvnaibG12MpQbAPH0yg44lWAFnPfmXKw8FF70cWZcyhIuVPXJykSQL2TPx1u2yzhGhunfGBztKUQwy82O4Ts4nvKnSOnnqk0puXHjdaHhLsLiA21+TCNIQB1Ysnug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=HLopfI1Cr47oc4SGNF4R97c6Ql5tf8Be6HMzFEgRds8=; b=iTQByFxDofVM5st2nZD9FJyK/e6BTMniaLys2RzD9t4XC7B08oO4LyJ5mN6ZijMHNLDytR/H0BciKkXoPz2ZhI6mJlikuduXUv4ew10LGUqDtPu8/hkg0GWRj7dbWEnSH9IWC3947htzqTSlZZvFpwH+IoeSLOq5QrYJFnx3OUmxJa/5TNLxLROj5FWGMjA+9Q6L6uxff7YbnKio+C/2XA01I+X6HP3PymH1kuPTYz5QCd+nDKCMsBbHAqKFSk2tvhcKB6+G45IvK9mrcDQJYc93hPydYhl7kQ/Yb4Pg8diEv4EBn9uCwLPiXfqorTl8MRSMnC/E1+XlQ0z9D+2B9Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 12.22.5.235) smtp.rcpttodomain=ovn.org smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HLopfI1Cr47oc4SGNF4R97c6Ql5tf8Be6HMzFEgRds8=; b=owHYEGxcp2BcLUIGmoSr9mCAhPsKtI7b8uTAfjXRW3ZUg4PcCd83BYmJ60z2BdARvtsR+3KAfj0KEVnwTvMQHPDSab3LYFrHiWEArIRrBf1wOKIcEwNsD6XfaJ7YWTBeN+y9F7doUbeTdJbI6d5BS6tkN8n8rdSSOItFClyo0BrvJzDsvaCIjq6jRnFtNdaAkTKeXwouA14e0q3ZC1cNNqRU9Zq8s/LLo9KZzCYpOUUmeBTA1gSAYbdKxWMQhoqorxd8sxvuJGAwawvSYRm2VLrqdBQyZJTlRXE2GREX6FdIl6OVHdGE0rMZcsY+DQr0X9gqOI4f2Q0HoGKOqEZHbw== Received: from BN0PR03CA0035.namprd03.prod.outlook.com (2603:10b6:408:e7::10) by CH2PR12MB4972.namprd12.prod.outlook.com (2603:10b6:610:69::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4823.21; Wed, 29 Dec 2021 08:35:44 +0000 Received: from BN8NAM11FT046.eop-nam11.prod.protection.outlook.com (2603:10b6:408:e7:cafe::7a) by BN0PR03CA0035.outlook.office365.com (2603:10b6:408:e7::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4844.13 via Frontend Transport; Wed, 29 Dec 2021 08:35:44 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 12.22.5.235) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 12.22.5.235 as permitted sender) receiver=protection.outlook.com; client-ip=12.22.5.235; helo=mail.nvidia.com; Received: from mail.nvidia.com (12.22.5.235) by BN8NAM11FT046.mail.protection.outlook.com (10.13.177.127) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4844.14 via Frontend Transport; Wed, 29 Dec 2021 08:35:43 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by DRHQMAIL107.nvidia.com (10.27.9.16) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Wed, 29 Dec 2021 08:35:42 +0000 Received: from nvidia.com (172.20.187.5) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.2.986.9; Wed, 29 Dec 2021 00:35:41 -0800 To: Date: Wed, 29 Dec 2021 10:35:17 +0200 Message-ID: <20211229083519.554-2-elibr@nvidia.com> X-Mailer: git-send-email 2.18.1 In-Reply-To: <20211229083519.554-1-elibr@nvidia.com> References: <20211229083519.554-1-elibr@nvidia.com> MIME-Version: 1.0 X-Originating-IP: [172.20.187.5] X-ClientProxiedBy: HQMAIL107.nvidia.com (172.20.187.13) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 624eaf34-6fcc-4e3a-8ea4-08d9caa63447 X-MS-TrafficTypeDiagnostic: CH2PR12MB4972:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1360; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gE1eJstFlK9jY2gCdMRZaKJwuAgeIAd/DSQVTghISmUZx1etcX5AbU7BJUKd3aclvrgA0BuhiRxSXPPqOJvFo7F1qC4PZS5RXXlrKN3plolFb2JPlNNUmry0tS4DWmJG8fdJLXQ0TxHfQ/AsuBxzqeTwnZ3EuRj6lExOSr/CptGw9dkCfH7NnRXbr+WAjEz1k7U8H5FTZBH7ew1HmfbViwN31WFtwe6scIk6L6toQK0AQ/t9M4tZYljDoMUPbHklt4HZLhG89Czj0Zy9oFggL+lawKq3NFsZAvaGQFPYU1Mxz5XoUQEMgNSNZefRWBgWoJrDsuG+AVNHg8in87yuI5xbgT0o1mUAcWDNLBCMleVTzra0mCNa/P/oqqIuhb5xB9NG5YcAMso37jhAf5qmXWlnFAj1k3oWbdr8Q8EmZeOCmRIT7MKvf6H9d9d1FMvoRux//9HvGSxn6zva4l6zc2Wfe+WyKWX3lPtYkhADTvgZLP4AV4dwcluQMNxx+Mt8HbRRbLkHrU56uT60PKpMWaVYd3FDKBFhsdjRCf2WBR4n3oGOiMKgrGXH+/a/qdW5mKYTTQLzm09UAX3/lxo1ahzVaJ0VbdBUoyB03xtBnuykYK72Xr7uiLCz2kGX4bOHYUuKPVHmzMTKm0TL7aWaimM+TQq0hnixDR5Iw+SqXzOEkQ6RXHLFhxYLBRconO2bMpKyvMsfWBZXWL4pNPSGrh9NXMXrOZIJ6eKeHFYzgSotkKFmA3spDqRIsCMdOKvur9+YApb47PnVFy+z8fzbtXdBzBWaFtaIKuLD+CCK9qk= X-Forefront-Antispam-Report: CIP:12.22.5.235; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:mail.nvidia.com; PTR:InfoNoRecords; CAT:NONE; SFS:(4636009)(46966006)(40470700002)(36840700001)(336012)(4744005)(36756003)(26005)(36860700001)(426003)(316002)(8676002)(186003)(107886003)(16526019)(70586007)(1076003)(8936002)(2906002)(55016003)(82310400004)(40460700001)(356005)(2616005)(54906003)(81166007)(47076005)(83380400001)(6666004)(6286002)(86362001)(5660300002)(7696005)(508600001)(70206006)(4326008)(6916009)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Dec 2021 08:35:43.8403 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 624eaf34-6fcc-4e3a-8ea4-08d9caa63447 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[12.22.5.235]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT046.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR12MB4972 Cc: Eli Britstein , Ilya Maximets Subject: [ovs-dev] [PATCH 1/3] netdev-dpdk: Add flow_api support for netdev geneve vports X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Eli Britstein via dev From: Eli Britstein Reply-To: Eli Britstein Errors-To: ovs-dev-bounces@openvswitch.org Sender: "dev" Add the acceptance of geneve devices to netdev_dpdk_flow_api_supported() API, to allow offloading of DPDK geneve devices. Signed-off-by: Eli Britstein Reviewed-by: Nir Anteby --- lib/netdev-dpdk.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index 6782d3e8f..311e6e065 100644 --- a/lib/netdev-dpdk.c +++ b/lib/netdev-dpdk.c @@ -5221,7 +5221,8 @@ netdev_dpdk_flow_api_supported(struct netdev *netdev) bool ret = false; if ((!strcmp(netdev_get_type(netdev), "vxlan") || - !strcmp(netdev_get_type(netdev), "gre")) && + !strcmp(netdev_get_type(netdev), "gre") || + !strcmp(netdev_get_type(netdev), "geneve")) && !strcmp(netdev_get_dpif_type(netdev), "netdev")) { ret = true; goto out; From patchwork Wed Dec 29 08:35:18 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eli Britstein X-Patchwork-Id: 1573912 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: bilbo.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256 header.s=selector2 header.b=f0EODee/; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org (client-ip=140.211.166.133; helo=smtp2.osuosl.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Received: from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4JP4Vj6MT6z9sPC for ; Wed, 29 Dec 2021 19:35:57 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id 7F475405DE; Wed, 29 Dec 2021 08:35:55 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id gSXITg1oa3EI; Wed, 29 Dec 2021 08:35:54 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [IPv6:2605:bc80:3010:104::8cd3:938]) by smtp2.osuosl.org (Postfix) with ESMTPS id 01DF840183; Wed, 29 Dec 2021 08:35:53 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id C4FBCC0012; Wed, 29 Dec 2021 08:35:52 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@lists.linuxfoundation.org Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) by lists.linuxfoundation.org (Postfix) with ESMTP id 5FB06C001E for ; Wed, 29 Dec 2021 08:35:49 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id ED972823AA for ; Wed, 29 Dec 2021 08:35:48 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Authentication-Results: smtp1.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=nvidia.com Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id eSDIUt96sLZs for ; Wed, 29 Dec 2021 08:35:48 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on20629.outbound.protection.outlook.com [IPv6:2a01:111:f400:7eab::629]) by smtp1.osuosl.org (Postfix) with ESMTPS id 413BA81A8E for ; Wed, 29 Dec 2021 08:35:48 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MwwodFLnv6j58b0Zd4fdpTbam/LCokFjhyO1aBNNjCy5u/Uf9LWyANLC4IfTsADSU8dmsaFQlYJBflxPscYc+Nu95Unwpz3zJISDxY0/0G+XxOGdtOEutnMZ5DUwIQQc5+BTl+6Nx1CxNedcBU4TmitEkhjR+WAgjGPDRS5eoWCvJKGERcZiumL5ALdzi/8gTUIHB46lp9O//eomReZUEWK9EILYZG3P2l3Ze1dPgFXBdDhElA3dferja3EgS22jZn4O++mHZJFL0SumGihkgLfiIFfdAQKEUpUfEoZmqVJIEAO+wChHTRWUnbt1KzN7Imq3uRC/gVZhw7rzmv4GFg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=9IfRXBcwHyP3zXfhEEfXYmDPZC5onxnCrB0UAF293Xo=; b=CFNRFTeKPqyN+lSdmP0mcDipi4krpGva0kwAHGC1/PdQKImoQ4ASNwm9QjOt+HTbEg/zyOlaF4fA2awecfnXyZlzKeTGy06bPXj5QdT1KJ0ejzVhmOaoZmLjGcA62qeEseWz835vbV0VYCBCHH+U+GCBtBJyLRhQ8yyH/OpR6NbP3YtxeTOr6KB1bHzZ6wMLXt937dndwGl66PEpRW26lXSn5NKKlIdOon8dA9Zo0N4bfE9ec+WI+VbXE5b2ZlkxPtoAWCs/rMdRhYeV0xNSGaawZOOS5axIiu+ZSjjXpdu85WUPYvpRIarw23nSsxdL4K+jhgTGsicpcmBSByhItQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 12.22.5.238) smtp.rcpttodomain=ovn.org smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9IfRXBcwHyP3zXfhEEfXYmDPZC5onxnCrB0UAF293Xo=; b=f0EODee/yCxCg4uRXv/vHZoMiccAaRu3cVN29LtojdOYLrNWjIVMdtIRnnRxMHOHsJVm25p9Vru3xoMKMMxvvlgBahl2dJBEOnShTsvoEx3M8SXFSrUTmIQiXFJRvxmJHrqCVQsy6LdaXzZ35FniJ4R8jfwH1SzSZchf3HShlVGb9VVlIOZQtXP5PTh4gLCHeKA0sEgzRMlG++uU4L4WHpLmPU3sOSXnG1Hk4AIJnoxgMzibn9XBQ0HejzQCSkLBL5y54GHWd1P6o+LtwKsRQsn8TmENDRj8SiynUPpNri0zcSqOPsOJnTjAz/pU6WOlM+h/d6vxyMU8zJaoexuRqw== Received: from BN9P222CA0017.NAMP222.PROD.OUTLOOK.COM (2603:10b6:408:10c::22) by MWHPR1201MB0029.namprd12.prod.outlook.com (2603:10b6:301:4d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4823.19; Wed, 29 Dec 2021 08:35:45 +0000 Received: from BN8NAM11FT040.eop-nam11.prod.protection.outlook.com (2603:10b6:408:10c:cafe::5f) by BN9P222CA0017.outlook.office365.com (2603:10b6:408:10c::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4823.19 via Frontend Transport; Wed, 29 Dec 2021 08:35:45 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 12.22.5.238) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 12.22.5.238 as permitted sender) receiver=protection.outlook.com; client-ip=12.22.5.238; helo=mail.nvidia.com; Received: from mail.nvidia.com (12.22.5.238) by BN8NAM11FT040.mail.protection.outlook.com (10.13.177.166) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4844.14 via Frontend Transport; Wed, 29 Dec 2021 08:35:45 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by DRHQMAIL105.nvidia.com (10.27.9.14) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Wed, 29 Dec 2021 08:35:44 +0000 Received: from nvidia.com (172.20.187.5) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.2.986.9; Wed, 29 Dec 2021 00:35:42 -0800 To: Date: Wed, 29 Dec 2021 10:35:18 +0200 Message-ID: <20211229083519.554-3-elibr@nvidia.com> X-Mailer: git-send-email 2.18.1 In-Reply-To: <20211229083519.554-1-elibr@nvidia.com> References: <20211229083519.554-1-elibr@nvidia.com> MIME-Version: 1.0 X-Originating-IP: [172.20.187.5] X-ClientProxiedBy: HQMAIL107.nvidia.com (172.20.187.13) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 325ab8b5-bb5d-45ed-bd76-08d9caa6351c X-MS-TrafficTypeDiagnostic: MWHPR1201MB0029:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:142; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: cYA3Ed8KGdeVMArNs1fHTINCF731shzCM+3S3ECNhDzIYe00gbLv0twaf86vHdFqq2MG6qns4i9uRnBCgzAR2nhSe+VawUSd7pGEcx6HucUgQyicyanu9KMYiihZmiqb/tV3CHCQ6C07qCboi1eAQ8roBKUqDHvdNB4ZEpY/hZSa08aisvo5ZF51X0HNqHyCyMqWMaO8hHdoKdcjABDJyC5hs2SYhCtaUr/hhFdITGG84hMbEcCsMJOrTayby44DLy0itdkaKYTS+sSw8Z1x12itzny5CWJoWuMLujDDOwuclB2IQgrj95UdKM1N1lPdDijr6S0BqIiqJR3ZTeJoIgpnkA0z3RPMOVx8NifA7MKGRaikSQMQ8LhTgPHG88fAFAm6MjN8BZqA/QbEQnaUrCYNp+5LpMPa+9MRiDHvVmv0gKRJ1gZQ6D/CXavuln9/yDccDcQWdaSd3iwYH4eBS5ma6gHXLXPA/AN+YE3duzC0JpMLB8inUqsaBOcMucXmI66jNwq6Mzx8Yo1cFuvsqghGzOA3CPzVQtn9/yMQwwPxNGgy6W0Ol35MSOQCtcnIBUJvlOSc9eeTa47P65lFVCdNiIWGUFVNR1n18GRy6MlP8iq+dEFC0Sg4yU9lzNOsu4N7k6O+GDrQ3QdfpQgttag2hSk5pfoKoC2iyAsMqsWriVjprUQEETBwZkVxaIZuwq0rOGR98qChV0caxypiwumAU62Y4vrIUtd0F2kjye0QkxZf47N8EyPaXjFRtUyhkAUieGMMMg7iFlcDw9OdlOEbjIa2YYZB7UeHi7ZtaOQ= X-Forefront-Antispam-Report: CIP:12.22.5.238; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:mail.nvidia.com; PTR:InfoNoRecords; CAT:NONE; SFS:(4636009)(40470700002)(36840700001)(46966006)(336012)(356005)(6666004)(55016003)(82310400004)(2906002)(6286002)(186003)(16526019)(81166007)(8676002)(508600001)(26005)(36860700001)(1076003)(316002)(6916009)(70586007)(4326008)(47076005)(7696005)(86362001)(5660300002)(70206006)(40460700001)(36756003)(2616005)(107886003)(8936002)(426003)(54906003)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Dec 2021 08:35:45.2218 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 325ab8b5-bb5d-45ed-bd76-08d9caa6351c X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[12.22.5.238]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: BN8NAM11FT040.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR1201MB0029 Cc: Eli Britstein , Ilya Maximets Subject: [ovs-dev] [PATCH 2/3] netdev-offload-dpdk: Support tnl_pop for geneve tunnel X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Eli Britstein via dev From: Eli Britstein Reply-To: Eli Britstein Errors-To: ovs-dev-bounces@openvswitch.org Sender: "dev" Signed-off-by: Eli Britstein Reviewed-by: Nir Anteby --- lib/netdev-offload-dpdk.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/lib/netdev-offload-dpdk.c b/lib/netdev-offload-dpdk.c index 402353125..50650bd07 100644 --- a/lib/netdev-offload-dpdk.c +++ b/lib/netdev-offload-dpdk.c @@ -955,6 +955,17 @@ vport_to_rte_tunnel(struct netdev *vport, ds_put_format(s_tnl, "flow tunnel create %d type gre; ", netdev_dpdk_get_port_id(netdev)); } + } else if (!strcmp(netdev_get_type(vport), "geneve")) { + tunnel->type = RTE_FLOW_ITEM_TYPE_GENEVE; + tnl_cfg = netdev_get_tunnel_config(vport); + if (!tnl_cfg) { + return -1; + } + tunnel->tp_dst = tnl_cfg->dst_port; + if (!VLOG_DROP_DBG(&rl)) { + ds_put_format(s_tnl, "flow tunnel create %d type geneve; ", + netdev_dpdk_get_port_id(netdev)); + } } else { VLOG_DBG_RL(&rl, "vport type '%s' is not supported", netdev_get_type(vport)); @@ -2378,6 +2389,8 @@ get_vport_netdev(const char *dpif_type, aux.type = "vxlan"; } else if (tunnel->type == RTE_FLOW_ITEM_TYPE_GRE) { aux.type = "gre"; + } else if (tunnel->type == RTE_FLOW_ITEM_TYPE_GENEVE) { + aux.type = "geneve"; } netdev_ports_traverse(dpif_type, get_vport_netdev_cb, &aux); From patchwork Wed Dec 29 08:35:19 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eli Britstein X-Patchwork-Id: 1573913 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: bilbo.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256 header.s=selector2 header.b=pi/rrkIY; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org (client-ip=2605:bc80:3010::137; helo=smtp4.osuosl.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Received: from smtp4.osuosl.org (smtp4.osuosl.org [IPv6:2605:bc80:3010::137]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4JP4Vl6t5Cz9sPC for ; Wed, 29 Dec 2021 19:35:59 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id B2EB04090A; Wed, 29 Dec 2021 08:35:57 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id E8ECPkS2708k; Wed, 29 Dec 2021 08:35:56 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [IPv6:2605:bc80:3010:104::8cd3:938]) by smtp4.osuosl.org (Postfix) with ESMTPS id B3B5A408ED; Wed, 29 Dec 2021 08:35:55 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 1D892C0071; Wed, 29 Dec 2021 08:35:54 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@lists.linuxfoundation.org Received: from smtp1.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by lists.linuxfoundation.org (Postfix) with ESMTP id 23606C0012 for ; Wed, 29 Dec 2021 08:35:51 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id F264D823E8 for ; Wed, 29 Dec 2021 08:35:50 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Authentication-Results: smtp1.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=nvidia.com Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id i8rcV61baOpv for ; Wed, 29 Dec 2021 08:35:50 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 Received: from NAM02-DM3-obe.outbound.protection.outlook.com (mail-dm3nam07on2044.outbound.protection.outlook.com [40.107.95.44]) by smtp1.osuosl.org (Postfix) with ESMTPS id 01099823AA for ; Wed, 29 Dec 2021 08:35:49 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UC7FHrxQq0gq6plNlZsaH/XgEyxw3v3GFWHFfNSitq+vTzBujdZzWwdNDFe2hC0cyAJjwg6n2F/QS9Of7++FAceYDki+NemloiIio+Qd9WrHDJmRNeIsIh1lnxAVAbsu8Lvq4rgjMfi3i8qRd1Eqw69PyvZ5bS7fsOdE2GXc5JWC0k7lRRLXpJd8qcqTEwQWPamdaIDWT2PcsHsWhTC+gCYer89//nv0XLVZtRbB8Dk4A7x8C3FI/3XJUOPkdbNCKd920fMj2EVLtbQmw5DYgsJgDUb6wxV1zZBfV9KOmOUb/ZwIoQNFK/1B4sn1cEHxorpcCJGopVtEm/m9g45/gA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=bPY0RObrGrffr9H82GOdn+47jGu4R+VheFPP4z4rfyM=; b=A60iF6dOyxx/1vF5g1HtKny8GLNx/ghRkQEujhNg7/CyEUdPqBN0fRW6xA7Axc9lVYCEIwsQZ6gWzqxgdDb3weygWJstHUzyTr5S5wrfUv44aRSQHatQebAT8vT5qqMPd2K2lh3YHy6H2sjm1wDDuvsp0lzYhkHQS1OnVvouhtN43jrDx/8EIFu4Wzmc/DUD9Qxutt/l/fEXcQY/GZ4yW88FOc4o0ajJM0oA4Z4SZ3+DO7kucnjwoEpSubVMjukcIb/0lV/HasBOUwH6sVrjgrV/ddCDcgYcNeaX8wLnQHUNWNkyeoWClDjpmAGQWjd2bqD1NWZthURc4ky4vrmERg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 12.22.5.234) smtp.rcpttodomain=ovn.org smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bPY0RObrGrffr9H82GOdn+47jGu4R+VheFPP4z4rfyM=; b=pi/rrkIY5msOKZ19h2qF6cXy3nWlZX07sT6vtTziMWBYj4XbrbaKx7UeCWwGlaRpDTcNbgE+mna+MxYi7KIbzjZq5rjLJw+MTlTXqkIjk2NmNOZoJimaINb+QUdXJrLJfKQQpj6/g6FzZDpRc/SOi0HNfNOxHT+f6Jz2shVe6cZ6v139oAyel38esQ3QJnaLzAFVBqyhXMYDiHsLznznlyaFsokPud56TKBBzAGjEhdJKrSBkP6PQ6fu6Ozajytj7W/33DRMaFRjcZIcbtUzHqIbdNWKd3J/hFD0BEHFBrfYv4s12gPiXLhfbamRQ7lzmJgwyfxizf8+lI2driRItg== Received: from DM5PR20CA0002.namprd20.prod.outlook.com (2603:10b6:3:93::12) by DM6PR12MB3948.namprd12.prod.outlook.com (2603:10b6:5:1c4::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4823.19; Wed, 29 Dec 2021 08:35:47 +0000 Received: from DM6NAM11FT003.eop-nam11.prod.protection.outlook.com (2603:10b6:3:93:cafe::7f) by DM5PR20CA0002.outlook.office365.com (2603:10b6:3:93::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4823.19 via Frontend Transport; Wed, 29 Dec 2021 08:35:47 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 12.22.5.234) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 12.22.5.234 as permitted sender) receiver=protection.outlook.com; client-ip=12.22.5.234; helo=mail.nvidia.com; Received: from mail.nvidia.com (12.22.5.234) by DM6NAM11FT003.mail.protection.outlook.com (10.13.173.162) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4823.18 via Frontend Transport; Wed, 29 Dec 2021 08:35:46 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by DRHQMAIL101.nvidia.com (10.27.9.10) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Wed, 29 Dec 2021 08:35:46 +0000 Received: from nvidia.com (172.20.187.5) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.2.986.9; Wed, 29 Dec 2021 00:35:44 -0800 To: Date: Wed, 29 Dec 2021 10:35:19 +0200 Message-ID: <20211229083519.554-4-elibr@nvidia.com> X-Mailer: git-send-email 2.18.1 In-Reply-To: <20211229083519.554-1-elibr@nvidia.com> References: <20211229083519.554-1-elibr@nvidia.com> MIME-Version: 1.0 X-Originating-IP: [172.20.187.5] X-ClientProxiedBy: HQMAIL107.nvidia.com (172.20.187.13) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 05707d88-31e1-4087-7e22-08d9caa63621 X-MS-TrafficTypeDiagnostic: DM6PR12MB3948:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:843; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: NAm89A1mCX4fXU2bwh7Qg9M0FPps0Ytb+ojuSFLi4e/fLPKuaYQLMZrhhb9NdwCKGAq60JnbC9OWOP/9novrf4yhZBBJre2bBRGaBhMUNcEaWfB/qFPjBC6MoPa9TJqvsloKAx+OKiqUWnxMjx23iI0wRcB0M6SyQ+8i42TaDGNhWzCUyNAgklAyuw3goh+pyr6pKmQp3NzpK7UavrlQfI4eaUa70wuGBRje5MGlra1sR8HRpdXYEr+VdHCCREBBAmgsS2BFNG06JTj3k2LTlOV+aME6PXRosMGI9VtLKT/Tpx0r3UZnxJG0mXpogQykKxKr+B59WtFmwbwMA/SmpwSoAIPORg/6Uu4C2nlnWjGysBgBtHQ/w38TvWIxheTlJedk1n7Un1Py131XxB7bzTvVZsag1xxT2wiB9JXguNfI0yQLXS/xcYSrcCeGWWi6/Cv5yY8KOFOXuAXrmRbB9c5OethrJaCqJJSjjHrjgzSBDzsF2LqFIT+NjmrycUK6p+MGuZAUhlEcreU+Y9HJ0zY544EX2Cz/WoAUkjrjYSeff3y3Gbx7vMJlxXwUYkfaNGJi7+F9eJ0en+oLZyn/Zq5DbTejRvT52zAoQ47yE4jfcLLGzBJ1bJtAXMmNLnqPFagolKCUHbT+Yls+y8dIFTzT62ymwcYGLnVyB208DWks96lin2JcDJkhLmj0wp4mzZs+YC7734y7+GO8IKF38ADc9kmD83p+r+8rnLIQbIQgIxXwOMlNkHpjoWyh8AU+CEw1ZJIhSlgjcv0s557M0KC0kgESxHj1m12NGD0LHYQ= X-Forefront-Antispam-Report: CIP:12.22.5.234; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:mail.nvidia.com; PTR:InfoNoRecords; CAT:NONE; SFS:(4636009)(40470700002)(36840700001)(46966006)(26005)(6286002)(54906003)(2616005)(36756003)(86362001)(186003)(356005)(16526019)(8676002)(81166007)(55016003)(2906002)(1076003)(508600001)(40460700001)(47076005)(6916009)(316002)(36860700001)(82310400004)(107886003)(7696005)(4326008)(8936002)(6666004)(5660300002)(426003)(70206006)(336012)(70586007)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Dec 2021 08:35:46.9776 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 05707d88-31e1-4087-7e22-08d9caa63621 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[12.22.5.234]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT003.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB3948 Cc: Eli Britstein , Ilya Maximets Subject: [ovs-dev] [PATCH 3/3] netdev-offload-dpdk: Add geneve header pattern match X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Eli Britstein via dev From: Eli Britstein Reply-To: Eli Britstein Errors-To: ovs-dev-bounces@openvswitch.org Sender: "dev" Add support for matching on geneve header. Signed-off-by: Eli Britstein Reviewed-by: Nir Anteby --- NEWS | 2 ++ lib/netdev-offload-dpdk.c | 58 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 60 insertions(+) diff --git a/NEWS b/NEWS index bc4a1cfac..18f15b61f 100644 --- a/NEWS +++ b/NEWS @@ -14,6 +14,8 @@ Post-v2.16.0 * Add hardware offload support for GRE flows (experimental). Available only if DPDK experimantal APIs enabled during the build. * Add support for DPDK 21.11. + * Add hardware offload support for GENEVE flows (experimental). + Available only if DPDK experimantal APIs enabled during the build. - Python: * For SSL support, the use of the pyOpenSSL library has been replaced with the native 'ssl' module. diff --git a/lib/netdev-offload-dpdk.c b/lib/netdev-offload-dpdk.c index 50650bd07..36b780be6 100644 --- a/lib/netdev-offload-dpdk.c +++ b/lib/netdev-offload-dpdk.c @@ -491,6 +491,24 @@ dump_flow_pattern(struct ds *s, ntohl(*key_spec), ntohl(*key_mask), 0); } ds_put_cstr(s, "/ "); + } else if (item->type == RTE_FLOW_ITEM_TYPE_GENEVE) { + const struct rte_flow_item_geneve *geneve_spec = item->spec; + const struct rte_flow_item_geneve *geneve_mask = item->mask; + ovs_be32 spec_vni, mask_vni; + + ds_put_cstr(s, "geneve "); + if (geneve_spec) { + if (!geneve_mask) { + geneve_mask = &rte_flow_item_geneve_mask; + } + spec_vni = get_unaligned_be32(ALIGNED_CAST(ovs_be32 *, + geneve_spec->vni)); + mask_vni = get_unaligned_be32(ALIGNED_CAST(ovs_be32 *, + geneve_mask->vni)); + DUMP_PATTERN_ITEM(geneve_mask->vni, false, "vni", "%"PRIu32, + ntohl(spec_vni) >> 8, ntohl(mask_vni) >> 8, 0); + } + ds_put_cstr(s, "/ "); } else { ds_put_format(s, "unknown rte flow pattern (%d)\n", item->type); } @@ -1197,6 +1215,44 @@ parse_gre_match(struct flow_patterns *patterns, return 0; } +static int +parse_geneve_match(struct flow_patterns *patterns, + struct match *match) +{ + struct rte_flow_item_geneve *geneve_spec, *geneve_mask; + struct flow *consumed_masks; + int ret; + + ret = parse_tnl_ip_match(patterns, match, IPPROTO_UDP); + if (ret) { + return -1; + } + parse_tnl_udp_match(patterns, match); + + consumed_masks = &match->wc.masks; + /* GENEVE */ + geneve_spec = xzalloc(sizeof *geneve_spec); + geneve_mask = xzalloc(sizeof *geneve_mask); + + put_unaligned_be32(ALIGNED_CAST(ovs_be32 *, geneve_spec->vni), + htonl(ntohll(match->flow.tunnel.tun_id) << 8)); + put_unaligned_be32(ALIGNED_CAST(ovs_be32 *, geneve_mask->vni), + htonl(ntohll(match->wc.masks.tunnel.tun_id) << 8)); + + consumed_masks->tunnel.tun_id = 0; + consumed_masks->tunnel.flags = 0; + /* tunnel.metadata.present.len value indicates the number of + * options, it's mask does not indicate any match on the packet, + * thus masked. + */ + memset(&consumed_masks->tunnel.metadata.present, 0, + sizeof consumed_masks->tunnel.metadata.present); + + add_flow_pattern(patterns, RTE_FLOW_ITEM_TYPE_GENEVE, geneve_spec, + geneve_mask, NULL); + return 0; +} + static int OVS_UNUSED parse_flow_tnl_match(struct netdev *tnldev, struct flow_patterns *patterns, @@ -1212,6 +1268,8 @@ parse_flow_tnl_match(struct netdev *tnldev, if (!strcmp(netdev_get_type(tnldev), "vxlan")) { ret = parse_vxlan_match(patterns, match); + } else if (!strcmp(netdev_get_type(tnldev), "geneve")) { + ret = parse_geneve_match(patterns, match); } else if (!strcmp(netdev_get_type(tnldev), "gre")) { ret = parse_gre_match(patterns, match);