From patchwork Mon Feb 7 17:24:24 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eli Britstein X-Patchwork-Id: 1589473 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=JMAdXhp6; 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 4JstLr2CkLz9sFN for ; Tue, 8 Feb 2022 04:25:08 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id 9AF2340522; Mon, 7 Feb 2022 17:25:05 +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 iQl-QuocuRRO; Mon, 7 Feb 2022 17:25:04 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by smtp2.osuosl.org (Postfix) with ESMTPS id 8ED614049B; Mon, 7 Feb 2022 17:25:03 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 0E58CC001A; Mon, 7 Feb 2022 17:25:03 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@lists.linuxfoundation.org Received: from smtp3.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by lists.linuxfoundation.org (Postfix) with ESMTP id 52CC4C000B for ; Mon, 7 Feb 2022 17:25:01 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id 3F3D460B20 for ; Mon, 7 Feb 2022 17:25:01 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Authentication-Results: smtp3.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=nvidia.com 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 YjnMQJ485uJi for ; Mon, 7 Feb 2022 17:25:00 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2065.outbound.protection.outlook.com [40.107.237.65]) by smtp3.osuosl.org (Postfix) with ESMTPS id 5E9C760067 for ; Mon, 7 Feb 2022 17:25:00 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WX+qBmmoHw9pAIPc4JZzl0vB7HdU2JfWalmBPkKAUldyW2EjQvbH3fqhr05Ucqqy3MCjE/Z5FdeZ25d69vUKPah0+gcLXm0hTiugsW5zTgTsp4px2kja8b6z3ehhgk+6B5vnftM47lo8Q48aHTXbhskYgqrhJFoNC/jnD5mRangSE8OCvlq7dvDVkE8wcco+VRe73OworvOURiqerSK7M5iJ2aEs5pt8pdBbZTLk+QroQT4ImkVapVRM9/64Cuhz5pJrJwR3gomrUuwLcsEas5UgDAHBOPZYrCtLzAyBNdWDgEKiW2YP2W8GdKCux/D5SVttUoMiSHzO02tOk9MBgQ== 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=3NQXUbCzcAQmd4dUpT8WRtBy9W70rhiYoUwYrIcyFj4=; b=a+uQoX/n9aqRNu/hpq7ElMZZpQ6T5ZTjHcoFJwIunniBXmUDfCdlFO1icR5L7/9QnjA5VFlRECosKYj3sJbSXHAabq6vA70bgUMiSoTDASGHxqzuo/ZWJUfZehtc0RKjzTc1VtqPgI8MWLClv5AaLf+2JM9yW2VWv+JAqd8o5J0h4In/DMD8aaVReMXNHXEOiNpzJqLX4mfTl9npi1SmNTrkKTfhUpdDpAKWAyZe5kP8sYGGrI8bVEXLKF4cSHOL1+oPBIRRhTxzeC1wXWSw6YFeURNnwE59Y+Qxu2og6jEDItm2+ILczANU2G1TGWK/Umu0q3l0xQnl80bD2dFwjA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 12.22.5.238) smtp.rcpttodomain=redhat.com 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=3NQXUbCzcAQmd4dUpT8WRtBy9W70rhiYoUwYrIcyFj4=; b=JMAdXhp6yaXrZmu2V/XPmFENWkKowwV1MijIwT6TuvqrZ8D78bTUwuf2mtvUnuU5yqOpqx5zDOiOPT/EpDhzSiFFASqnUMxycMXtpltpzf9WW36G+tLKDlwysFZriqY1vkt9K/m0Nt6OJz/wDH94pslAKcAMUTnJ4Dien+UU6GeB5vibfK5brJeMESGbfqKMIj9K9WGCJAH8faiN4QeJVMfSm3t9J8aCmLCZJJbUnh42OY5P2tjUvs4cMurzz6AtTy9Z9I4JgSgsZs8nzmFnR7tOLoNRjmOwSDwCDN4iIZQ4WATB9wMvjnJ2FCRIS+RyqMfBcvAA0TtiMeH0kwZY9Q== Received: from DS7PR07CA0014.namprd07.prod.outlook.com (2603:10b6:5:3af::17) by DM4PR12MB5325.namprd12.prod.outlook.com (2603:10b6:5:390::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4951.11; Mon, 7 Feb 2022 17:24:58 +0000 Received: from DM6NAM11FT048.eop-nam11.prod.protection.outlook.com (2603:10b6:5:3af:cafe::fb) by DS7PR07CA0014.outlook.office365.com (2603:10b6:5:3af::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4951.11 via Frontend Transport; Mon, 7 Feb 2022 17:24:58 +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 DM6NAM11FT048.mail.protection.outlook.com (10.13.173.114) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4951.12 via Frontend Transport; Mon, 7 Feb 2022 17:24:57 +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; Mon, 7 Feb 2022 17:24:57 +0000 Received: from nvidia.com (10.126.230.35) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.9; Mon, 7 Feb 2022 09:24:55 -0800 To: , Ilya Maximets Date: Mon, 7 Feb 2022 19:24:24 +0200 Message-ID: <20220207172426.813734-2-elibr@nvidia.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220207172426.813734-1-elibr@nvidia.com> References: <20211229083519.554-1-elibr@nvidia.com> <20220207172426.813734-1-elibr@nvidia.com> MIME-Version: 1.0 X-Originating-IP: [10.126.230.35] X-ClientProxiedBy: rnnvmail201.nvidia.com (10.129.68.8) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 1fdce228-2cb4-480b-b9aa-08d9ea5ec3b1 X-MS-TrafficTypeDiagnostic: DM4PR12MB5325: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: /5IWy4UtnYU5nD5SWZEzGn2ub7ASQDEJoNyFWNWVB5WVvaGz2pyYLbfU+LE6pKJMYOF/OQhp85/cm1JcCa5zOh9cfVciIvdtqcVGqJWWF0vIn/XRZ3gCEifi2PlCR89jIEc6lwjEH4MT37fUuJS0dfoqZQEmoG1B5SYjYxKJPkkF44o/jLb7076CgiN3QjAfxmLJOBG1W48nmkTCHpB1zpbiUIaPllbWAexfY05IeJVDEXJu/3HaO3D0QOO39zwAKLWQcZww5Pt936FlX5GYo3/kTyHlilTF1HfTVupnQ5nxlvPljPq7uUA9jkj0dKATJWArbMtbPqMGJs+VGWXFz2k+Y4DNB3hHJ10Ovs8na/4tSSAQM+VeS2qbxyXXpRsfviaRVGFvLj1YY6tr5tiJfV2UZqiEPWlJcy4Bj1cF6zpSZ1FEGgktPksH0xfSqbVPoVd937XohseQR7RG9EUQM/YXNEQjFMMXvJdrMq29js+GSRTF5+cuCEeo78FMt/uRuWPiePkI1ff36EAbGl58ljKfF31KQIboR+uxHBTkHDimmS6UWO24LhFhhETS3ykhwV1eQO+KPdDXuc0MXhWqxrgJ5gF6KReHHZjF9ugP96wcm47hQmrOf/1kojvH+Gimglc4AN9A5zOdw44ujcRG+pcYArPCI1Rgx5z67HEjguKajfG+Klr5uVWU3co/YWUCQr+79gPf/8SMPDlz5w/UZw== 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:(13230001)(4636009)(40470700004)(36840700001)(46966006)(4744005)(82310400004)(5660300002)(107886003)(70586007)(2906002)(36860700001)(55016003)(6286002)(36756003)(110136005)(8936002)(4326008)(70206006)(8676002)(54906003)(40460700003)(86362001)(316002)(81166007)(7696005)(356005)(186003)(16526019)(2616005)(26005)(47076005)(1076003)(83380400001)(508600001)(6666004)(336012)(426003)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2022 17:24:57.9415 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 1fdce228-2cb4-480b-b9aa-08d9ea5ec3b1 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: DM6NAM11FT048.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5325 Cc: Eli Britstein Subject: [ovs-dev] [PATCH V2 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 Acked-by: Michael Santana --- 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 b6b29c75e..0b600f285 100644 --- a/lib/netdev-dpdk.c +++ b/lib/netdev-dpdk.c @@ -5196,7 +5196,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 Mon Feb 7 17:24:25 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eli Britstein X-Patchwork-Id: 1589476 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=f/sw6oN0; 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 4JstM11SGlz9sFN for ; Tue, 8 Feb 2022 04:25:17 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id EC3C94049F; Mon, 7 Feb 2022 17:25:10 +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 OLom3GnXNUx2; Mon, 7 Feb 2022 17:25:08 +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 814D74035A; Mon, 7 Feb 2022 17:25:07 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id F1F0BC0082; Mon, 7 Feb 2022 17:25:04 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@lists.linuxfoundation.org Received: from smtp3.osuosl.org (smtp3.osuosl.org [IPv6:2605:bc80:3010::136]) by lists.linuxfoundation.org (Postfix) with ESMTP id 7FF1DC000B for ; Mon, 7 Feb 2022 17:25:03 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id 552FF60B20 for ; Mon, 7 Feb 2022 17:25:03 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Authentication-Results: smtp3.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=nvidia.com 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 LkU1XyLds8Dm for ; Mon, 7 Feb 2022 17:25:02 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2061.outbound.protection.outlook.com [40.107.237.61]) by smtp3.osuosl.org (Postfix) with ESMTPS id 9C2CE60067 for ; Mon, 7 Feb 2022 17:25:02 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BdlijWbRdGUu2L050hQg6xQpSM6XLz1Fh45brFJXSu3FXji1t8as/sAeHw4y/fYsMX3ucUV5dli7Nj8ryWsYUMuFD/gQ1fz0syCI944j+0CLbaolxo8oKih6dXPpIQSU6ZpQSs6YAj7zmD8dBgXrXRbnFUU4yLuMSCT5EPS1pT3UFnt8q7y2WbJR/yBqwh480mQ/sQyBC8dZ+2Y36Q6GAejpXTsxVsAP4TvidKX1vO9dlccKqM6nUs3L8i+mThtUmhlLhH0RWc+7Tuz1bG8elAQ3UHGtvEsVjVkLw9kcNyX4znulIGkxYiZZSUWXHYH+StdZaUT0xmGqDEaEJa+jVg== 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=cXZzO/v6XoQVDrNPkMPORbm23XtbsCURfoXl5V5YmkI=; b=TD62tu9qvA9bOG1a14j79PdH37uWNjD+63Ra8i4mbDEsoy0VfVnL2sgjyxfxNsAW0xVfAPyK0+cCZ/eGSd+HCAhBl0D97RgSkfLzFhgVgM603KhQKyA1/rAmJuKhahXTeynDirp5L9ILVUHezD0S3KT5hO0CmSqXlKZL/WV5GlNI9njThCVQQqjZE87fmxJaAvBAeyFKK75xVFdVI/CoDT3UNKlLsEvD9xFFiEQ2fCTWq1KZuPZ1txoBaWoVNJUW/cOj779ZvIk8yHSDT+XoWeBIcNdqwz4djcssVStLaOi2Ekz/Bzx21EuMkOt4YmfmaM4+vOr/KZvusyTq4QgvVg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 12.22.5.234) smtp.rcpttodomain=redhat.com 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=cXZzO/v6XoQVDrNPkMPORbm23XtbsCURfoXl5V5YmkI=; b=f/sw6oN0Taa0SAQxc2GBi/ODuTTys4knahzYGGu4BsiqTdiW7yDlzW72p60zHWNrOswRPSq04YFUKqaTlb237r8/cnG9mXWdMkNRE/vG2IZlTOaWIFp82iulUZhDZ4udHNEudue6wgDqjYmGRHGWHvR3C5qiHB3a0EGB387/3rlI40VOAcgv4YFfdptbF75mW4UT9HVnDnPEn2RxnbERwFyKS3DMSmv2/YMz3mbDvyZa4xY/J5Xx1TV6mY2iGvYsLlow79uSrkYRlAYOd6/5ybccgjRJ1nhsvN/CU80bJ7dd/vCA2C4JxxyLnT95Mht/u8IWSefBbh3Yc2tj0dbSYg== Received: from DM6PR17CA0001.namprd17.prod.outlook.com (2603:10b6:5:1b3::14) by DM6PR12MB3387.namprd12.prod.outlook.com (2603:10b6:5:3a::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4951.12; Mon, 7 Feb 2022 17:25:00 +0000 Received: from DM6NAM11FT008.eop-nam11.prod.protection.outlook.com (2603:10b6:5:1b3:cafe::99) by DM6PR17CA0001.outlook.office365.com (2603:10b6:5:1b3::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4951.18 via Frontend Transport; Mon, 7 Feb 2022 17:25:00 +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 DM6NAM11FT008.mail.protection.outlook.com (10.13.172.85) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4951.12 via Frontend Transport; Mon, 7 Feb 2022 17:25:00 +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; Mon, 7 Feb 2022 17:24:59 +0000 Received: from nvidia.com (10.126.230.35) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.9; Mon, 7 Feb 2022 09:24:57 -0800 To: , Ilya Maximets Date: Mon, 7 Feb 2022 19:24:25 +0200 Message-ID: <20220207172426.813734-3-elibr@nvidia.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220207172426.813734-1-elibr@nvidia.com> References: <20211229083519.554-1-elibr@nvidia.com> <20220207172426.813734-1-elibr@nvidia.com> MIME-Version: 1.0 X-Originating-IP: [10.126.230.35] X-ClientProxiedBy: rnnvmail201.nvidia.com (10.129.68.8) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 92599901-dc03-4008-9365-08d9ea5ec500 X-MS-TrafficTypeDiagnostic: DM6PR12MB3387: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: OFMI1uWvGQM+Khqj03Cgn9uKRAHEAFO0R/FEMP9KpSgo/qTRSQvNZATi5bgy9jEj0otr1YNLIsBeRqgxw45wVUoEdAU2n9Js/StMI27N8AZ5dw+OKS5hUr76aXpoGBzOdca+pTfYshF0nmwbkGUbhgn6OQI16hDf3YPdOM5EslBTXKN4On3uP5t9SMCd6N2Uy+WoaMB1EKAY9HJ4piWCvfdOe9raFddE5O5/T84rjW12t5zpHZQWHWGDLsXnehU/ZYCkT3vr1yxMt4oTBvevFzAEf23gPXFN6Z5yXIAVJvSKAsbqNLQCDJezkwZh0Z2V3u4UEuNJefwQYRhYLt/pPVP6vYbq3ONfnd4dlUaeGRXXqQmIReGnR7sRg0TPHIpFvuh0tJJcxf4wRIcdkx9fRT+ck0N2LwQ1RylqPyf7YgQ53199nZP5h8Y7IaPXBibgsGGf88K6rGFoBbLQaS3/akJb87btvmuH3lK6x4p0JGvY1SkBy/5obDTqgl51S8/O/UlZxTcIa7riT2YHmnOPzf+wLUI9Po0diZdo49BU4eDK9WM6hTFnZsM/TP17r3wq/ACMC9G+MPjajp//PnECcpZ1ORrUSPRKcJZOliKiQfihmVXCq6NAKnG10c8EuXqM+BLXy4mutfk3aBkKbqwcvR3Wm7+v/QM5YwbLkm7Fn/M/d4KVJBzoh6lL/S0pi6T3O4pAC/otrSL9qtYq0zYpkA== 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:(13230001)(4636009)(36840700001)(40470700004)(46966006)(7696005)(316002)(6666004)(82310400004)(336012)(426003)(47076005)(40460700003)(86362001)(107886003)(36756003)(36860700001)(4326008)(186003)(110136005)(5660300002)(54906003)(55016003)(2616005)(8936002)(508600001)(8676002)(81166007)(70206006)(2906002)(16526019)(6286002)(1076003)(26005)(356005)(70586007)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2022 17:25:00.1360 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 92599901-dc03-4008-9365-08d9ea5ec500 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: DM6NAM11FT008.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB3387 Cc: Eli Britstein Subject: [ovs-dev] [PATCH V2 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 Acked-by: Michael Santana --- 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 94dc6a9b7..edd4e009d 100644 --- a/lib/netdev-offload-dpdk.c +++ b/lib/netdev-offload-dpdk.c @@ -1109,6 +1109,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)); @@ -2582,6 +2593,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 Mon Feb 7 17:24:26 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eli Britstein X-Patchwork-Id: 1589475 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=KAHKjdPX; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org (client-ip=2605:bc80:3010::138; helo=smtp1.osuosl.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) (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 4JstLy1qdFz9sFn for ; Tue, 8 Feb 2022 04:25:13 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id 0102A8175A; Mon, 7 Feb 2022 17:25:10 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org 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 dbKWT26ISM9G; Mon, 7 Feb 2022 17:25:09 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [IPv6:2605:bc80:3010:104::8cd3:938]) by smtp1.osuosl.org (Postfix) with ESMTPS id E061581499; Mon, 7 Feb 2022 17:25:08 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id B8BA6C001A; Mon, 7 Feb 2022 17:25:08 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@lists.linuxfoundation.org Received: from smtp2.osuosl.org (smtp2.osuosl.org [IPv6:2605:bc80:3010::133]) by lists.linuxfoundation.org (Postfix) with ESMTP id D5A98C000B for ; Mon, 7 Feb 2022 17:25:06 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id A4F804056B for ; Mon, 7 Feb 2022 17:25:06 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Authentication-Results: smtp2.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=nvidia.com 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 WSsEl5qsrWJA for ; Mon, 7 Feb 2022 17:25:05 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2072.outbound.protection.outlook.com [40.107.94.72]) by smtp2.osuosl.org (Postfix) with ESMTPS id 30DB54051A for ; Mon, 7 Feb 2022 17:25:04 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YuTscQUrNnxmG9Ocn/6LYwYL6wZwdIqmW1rPlXVvNJb2u8VWSxsmuPmrFme2m/sKlbWicPiui9LNMGa2RI3rmJHjbd3XYPVPlvLfbLOE/PDi1yYaZnTmCJK6Pp+T2Xn8XqUJJc2K36k5mmaTQ1KQXSlo6aUuWHa6f4KneuUIPe/78bdAqEk58KMeJUOn8dlVyb1xrUlWoS8KPY76NH/VFUkck7H5Ll31deh6qkL2JVgzPv7BEluJVUYseqAwDloD+1FD+EyWb9895wn77+eGJvD/8REJXrESC6tysUgGhKhj/Ies2o69VYtqGOYBinkaKC9pjhVssz74AD0cv9H/1Q== 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=EElY9LTuH8Ra+sMcZ2Q3hTDHpPUUw3u7A8yj/Wy/7pA=; b=anh0W6d3uHnokJxsqQLprcDKdkh148CYQCKYayJk6MEifWrY7hvzdtyxJHE+v/7KfvhU4MZMOCGjQpPBUJdE13kgfNGO7ff6KB8ZSXjakLWCuqWY4GubZrOb8LMCnmHvYEeJyQi1Z7EDBBTIS+QWfI5jni4oJxiRPf1086oNsAvlvK2KlOGMi/16vPm9GuNnJgvWccan3SFz/XeHzP6NCVr2bOn5xbTiNxvZ+H04sgmux3aXX/oK7dc4R3Ycd0Z5vDjICl7YT6g84CXQr7jPC9RECql2FPfzndqzBBOrMwVlYcUvKuf0z00/hkMdIVB2VU99YPKJGaYf2pxpFYxszQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 12.22.5.236) smtp.rcpttodomain=redhat.com 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=EElY9LTuH8Ra+sMcZ2Q3hTDHpPUUw3u7A8yj/Wy/7pA=; b=KAHKjdPX6CwJ3zw+z/3jwLEUbQsaVEFFz8P0QqQEt0fu+pgWPUmO8zWx4m8r566QRubUSvEiNGga0pnik/B4FhAYI7L7hEo/q0PM8GLo7lfKBWKogfUF5usV0VTCAtR4TCX1wLCQFRA93t1RkBrSw94n7XvY+4eQMaZwxAuaBJ6uQjuXxTGcDoqBXWGL0u6+d5yXXoSLWAZ95dGcG6pGgw8Q2hYriZ7monFOMAIyLIzCdxy8KKpzY+dGqGqiqva3sVNDg2P18hfC3KMbGrXsMldD78E7WwiaP/P2shbsJVdAY+eEDBPYg6+ngf8hvAJDhsDfmCuJJdLJ9AXyLc6n4A== Received: from DM6PR05CA0039.namprd05.prod.outlook.com (2603:10b6:5:335::8) by MW3PR12MB4345.namprd12.prod.outlook.com (2603:10b6:303:59::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4951.12; Mon, 7 Feb 2022 17:25:03 +0000 Received: from DM6NAM11FT032.eop-nam11.prod.protection.outlook.com (2603:10b6:5:335:cafe::dd) by DM6PR05CA0039.outlook.office365.com (2603:10b6:5:335::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4975.10 via Frontend Transport; Mon, 7 Feb 2022 17:25:02 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 12.22.5.236) 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.236 as permitted sender) receiver=protection.outlook.com; client-ip=12.22.5.236; helo=mail.nvidia.com; Received: from mail.nvidia.com (12.22.5.236) by DM6NAM11FT032.mail.protection.outlook.com (10.13.173.93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.4951.12 via Frontend Transport; Mon, 7 Feb 2022 17:25:02 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by DRHQMAIL109.nvidia.com (10.27.9.19) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Mon, 7 Feb 2022 17:25:01 +0000 Received: from nvidia.com (10.126.230.35) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.9; Mon, 7 Feb 2022 09:24:59 -0800 To: , Ilya Maximets Date: Mon, 7 Feb 2022 19:24:26 +0200 Message-ID: <20220207172426.813734-4-elibr@nvidia.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220207172426.813734-1-elibr@nvidia.com> References: <20211229083519.554-1-elibr@nvidia.com> <20220207172426.813734-1-elibr@nvidia.com> MIME-Version: 1.0 X-Originating-IP: [10.126.230.35] X-ClientProxiedBy: rnnvmail201.nvidia.com (10.129.68.8) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 53153c00-fd2f-4c3f-2297-08d9ea5ec668 X-MS-TrafficTypeDiagnostic: MW3PR12MB4345: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: 2ox+W1+joFGxSKJo8TiCBhMO862h9oDpR/AcE0B8EDWqjmT1+BAFahEwpn/qHuHXgq6Zg3h5KIG9bSEZgZdqV48yoa/LXUIcM50OFsNo6KNo0MxN/m94V4thFrQk/yY+d41by4+yRszYVKewiPkZAJfyfY+a2+Sh1d8H2Or1GU1qrVyKasafA59JZ1swRVaqVrEDCRuvW+16/hVuNxSMsyyI9kkzVmfjafDNh151ZW5eenoek3ityLkDhurZp/f2882f3CMMBl4OIONkux9vymHVKSPTWh06K80VC2uBySovRV3TX8YYqM6R82cIeOMaBOqbRJsXSl7plj+6LU8D0Orqb7dFR+gNLYXy0nRCyWNJg0jGO2c4fJQ3Xm9p9wIQadvg8g4xExn6m13y+NWyippc8h5MMSIQB2i+QtPNzfdPRH3Hxr0KKiiY791usqoWgqR4vk7QJBYYji70sa1rBSPKd9MMPYG9JEDeISq5X/Lo7nkZnE52iv6SDvyDvTW3mONVU0sWKkXAr5xUjGNYaoH8nAp5zQNr0b0H2XO/hoV8jTVJAcnVp6A5/hvKOoO3oQ2Mve9fE1VaKc4e3WetbiPJQD9ehuYMcVAg9INwZKLz/V6nD+qKP2jVAlZhONohA1V02SFKxWWQhpqyYXijCMP/cxVzcsOFYir3o+cVhMgLvU1VjBjGcDuHgcsky4XqmrbyTeACqNo/+MLvDJJvpHQ809sDJtiBz4pzyx4Ko8M= X-Forefront-Antispam-Report: CIP:12.22.5.236; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:mail.nvidia.com; PTR:InfoNoRecords; CAT:NONE; SFS:(13230001)(4636009)(40470700004)(36840700001)(46966006)(508600001)(6666004)(7696005)(110136005)(316002)(54906003)(5660300002)(2906002)(36756003)(40460700003)(2616005)(8676002)(6286002)(16526019)(26005)(336012)(426003)(186003)(70206006)(47076005)(70586007)(1076003)(36860700001)(8936002)(82310400004)(55016003)(86362001)(356005)(81166007)(4326008)(107886003)(21314003)(36900700001); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2022 17:25:02.5080 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 53153c00-fd2f-4c3f-2297-08d9ea5ec668 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.236]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT032.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW3PR12MB4345 Cc: Eli Britstein Subject: [ovs-dev] [PATCH V2 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 Acked-by: Michael Santana --- NEWS | 2 ++ lib/netdev-offload-dpdk.c | 58 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 60 insertions(+) diff --git a/NEWS b/NEWS index e1c48f3a1..41a80d127 100644 --- a/NEWS +++ b/NEWS @@ -29,6 +29,8 @@ v2.17.0 - xx xxx xxxx * Add support for DPDK 21.11. * Forbid use of DPDK multiprocess feature. * Add support for running threads on cores >= RTE_MAX_LCORE. + * 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 edd4e009d..0303bd2df 100644 --- a/lib/netdev-offload-dpdk.c +++ b/lib/netdev-offload-dpdk.c @@ -638,6 +638,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); } @@ -1351,6 +1369,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, @@ -1366,6 +1422,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);