From patchwork Tue Apr 25 12:41:17 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Roi Dayan X-Patchwork-Id: 1773396 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org (client-ip=140.211.166.137; helo=smtp4.osuosl.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Authentication-Results: legolas.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=s/QwLRCs; dkim-atps=neutral Received: from smtp4.osuosl.org (smtp4.osuosl.org [140.211.166.137]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4Q5M8f2cJtz23td for ; Tue, 25 Apr 2023 22:42:26 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id B8A95417C9; Tue, 25 Apr 2023 12:42:23 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org B8A95417C9 Authentication-Results: smtp4.osuosl.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=s/QwLRCs 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 6gENI3H5swAd; Tue, 25 Apr 2023 12:42:22 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by smtp4.osuosl.org (Postfix) with ESMTPS id C8750417BE; Tue, 25 Apr 2023 12:42:20 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org C8750417BE Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 8BA9FC002A; Tue, 25 Apr 2023 12:42:20 +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 7B81BC007A for ; Tue, 25 Apr 2023 12:42:19 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id 4A052613FD for ; Tue, 25 Apr 2023 12:42:19 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org 4A052613FD Authentication-Results: smtp3.osuosl.org; dkim=pass (2048-bit key, unprotected) header.d=Nvidia.com header.i=@Nvidia.com header.a=rsa-sha256 header.s=selector2 header.b=s/QwLRCs 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 Ur35kmIXXQ2w for ; Tue, 25 Apr 2023 12:42:17 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org C2187610E5 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2061c.outbound.protection.outlook.com [IPv6:2a01:111:f400:7eab::61c]) by smtp3.osuosl.org (Postfix) with ESMTPS id C2187610E5 for ; Tue, 25 Apr 2023 12:42:17 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RsNhWx3a2eum3+Z9alyGCBHRUPqglNCbENNH2p7l6H7T9pIf9a3FQp3QhTFck+uD447c8suBEDH3XFJqBBoTO/NCCT3Af92ZVATjqJ0ZB7RBEB3Ynu9Qfpx+Dkc/j7sOF31dHg0bTqRCqItJyve42He0rwPtYdj2UO72NmWWjy9/w8/a1DYxWzmgC6BgfrAwN4qiBCHcXhViFJlptm8WLZVa3KTUdyu5XXHyC5GzprLyddSOtX4Df4bj3TDU80ACnuji9wnHHALxfPXF1IK7TxgQMKIGe85sh71bO2yAsh1aqCSJdjsz90J/j5vwhx2nWg5gDiTq47kczI7NKYzwvw== 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=3H3AagRnXnyZ11EcFHiMQluGuu1pIGujBQWhhbzomw4=; b=kBfp7hkgqoczcCVFdTDzOuM7aCdI/8WwvbFI3lVZRwPJwpqjGsLFjcOONUpAFP10H3WwKvUVePjwOex8VpqTJ+CVTXZG9NGRSNxAurGUAfPaJwN+zVyhYmdxKlO32cUaDLDnsvyKQEhpAov7XqcXLSlqdxpxen2XZr7dft1KXllMIqoLv7WFcr4wuG3J96Gpwtk/B4GPH+fA4d1OkjDkEvcR0XA1q7U84yrmocjAgRYPcNnIak8B+/loXfmmTFGyI5MwEA5L86nRVFxkrSk+pFFTNPRHFLO/CqrUlRnLVq1mBMyjwKaIgxi0CtkMZN9nYZxrpJQxZHJ8pi3XD4SVow== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.161) smtp.rcpttodomain=openvswitch.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=3H3AagRnXnyZ11EcFHiMQluGuu1pIGujBQWhhbzomw4=; b=s/QwLRCsDcFKwKhmQBPsGIXrgPVY2+UYy+s1PP2/xB+2+Pr96aRpNpKGVg9wvXe4wdqhqZQghbXPhNJZFB5fFHeedg5h3A30+0/WmyUqjDn4fwmCyOI2ZYRKwSat1tzS91Yi29FN18TKxSpFRty/SXgc8onwT1QmHRhmXGP8gLsPM2geidMPmMxHLJSaPV7ArZ18W6uEBQi4AAEJbfhR51tYOzEH50fgrciD5DUn1VdUyGRXKnn69WWeYMmYMbIvMzwOd9rEP5LLsSvQrf72LxqXzPSQJVb1dtrw09EjrYybuJVL8ig9cZUCRJanjd2Sjq3NNXv4Dw8Xdom/SUuT7w== Received: from DM6PR18CA0002.namprd18.prod.outlook.com (2603:10b6:5:15b::15) by IA0PR12MB7723.namprd12.prod.outlook.com (2603:10b6:208:431::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6319.33; Tue, 25 Apr 2023 12:42:15 +0000 Received: from DM6NAM11FT049.eop-nam11.prod.protection.outlook.com (2603:10b6:5:15b:cafe::d8) by DM6PR18CA0002.outlook.office365.com (2603:10b6:5:15b::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6319.34 via Frontend Transport; Tue, 25 Apr 2023 12:42:15 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.161) 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 216.228.117.161 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.161; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.161) by DM6NAM11FT049.mail.protection.outlook.com (10.13.172.188) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6340.20 via Frontend Transport; Tue, 25 Apr 2023 12:42:14 +0000 Received: from rnnvmail204.nvidia.com (10.129.68.6) by mail.nvidia.com (10.129.200.67) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.5; Tue, 25 Apr 2023 05:42:04 -0700 Received: from rnnvmail205.nvidia.com (10.129.68.10) by rnnvmail204.nvidia.com (10.129.68.6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.37; Tue, 25 Apr 2023 05:42:03 -0700 Received: from dev-r-vrt-138.mtr.labs.mlnx (10.127.8.10) by mail.nvidia.com (10.129.68.10) with Microsoft SMTP Server id 15.2.986.37 via Frontend Transport; Tue, 25 Apr 2023 05:42:01 -0700 To: Date: Tue, 25 Apr 2023 15:41:17 +0300 Message-ID: <20230425124122.2443376-3-roid@nvidia.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230425124122.2443376-1-roid@nvidia.com> References: <20230425124122.2443376-1-roid@nvidia.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT049:EE_|IA0PR12MB7723:EE_ X-MS-Office365-Filtering-Correlation-Id: 773234a4-265d-4ac3-b673-08db458a7f56 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: UgqOimX5e7wZB6CssZulUg1KWP+o4/c458gqkZfz4B6xTsGtF0dFM/gNOxJ60N/DHybTO8G210WxLJr87jV8VbWXxPo/oKH8d40osQGg9Xhpcf0vnn7AUnz1pTbWUbLQWsyEfTcxDilVi7PYRPME6m5VlX1sVIK2JNvl6BdvBsqcfWy2Tfo9RMOcJoxeY2D1Wj53ixNaX3RcjnrGqHCKNRpfwLMeVZEbDjtNexirDLfX71TEMcUQLXOG35PDD3J4vjr19yiPXfU5zf82oSkHyObBiwQrLvTaIH7e7KEV3UlqGxsANc3wiKBuwJqb21Bt+7nQmW1VjsIXE4qt4fTXOyt9C+PkbP91ykeU2dw4LV1JpVd7f79wQ9WHsnYDHCnhzlYeUMNavx/PCT0UO0tY8oFHupZGS0MCa2CbDWw8ieVChXLRy3gYFPGNq80SomFebK1IZFmTQaFSSUEBCM3QvrDs8/wJpnv1BPcojam2+dvbe96+hWCmWIfdpJUDnsdQOwWFVPx4YZOoEOnjsQlyklZlUQuLl7U+lPru8yTlbvSLJDG1MERcdeEjbeW6bgWeHjay6wUqjzSWF6l6Rwb4YoxvsFtVmwx4vECQAS5sUZqRo+EhQ/lCFp4oebow/8fZAbsizpmokwyBAkz5OyP4quQyFxdoqm10t+ua5pIUDXKeWe5vYTPZIBbd6zGB5jZSCWG1U4Z2gz9ht82Myo0vJeg92C/xPibnjCOjjLEGfVE= X-Forefront-Antispam-Report: CIP:216.228.117.161; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge2.nvidia.com; CAT:NONE; SFS:(13230028)(4636009)(396003)(39860400002)(376002)(136003)(346002)(451199021)(36840700001)(40470700004)(46966006)(107886003)(1076003)(26005)(40480700001)(426003)(336012)(2616005)(36756003)(34020700004)(83380400001)(36860700001)(47076005)(186003)(40460700003)(7636003)(82740400003)(356005)(70206006)(86362001)(70586007)(478600001)(6916009)(8676002)(8936002)(54906003)(5660300002)(41300700001)(2906002)(82310400005)(4326008)(6666004)(316002); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Apr 2023 12:42:14.5843 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 773234a4-265d-4ac3-b673-08db458a7f56 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.117.161]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT049.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB7723 Cc: Simon Horman , Gavi Teitz , Ilya Maximets , Gavin Li Subject: [ovs-dev] [PATCH v2 2/7] odp-util: Extract vxlan gbp option decoding to a function 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: Roi Dayan via dev From: Roi Dayan Reply-To: Roi Dayan Errors-To: ovs-dev-bounces@openvswitch.org Sender: "dev" From: Gavin Li Extract vxlan gbp option decoding to odp_decode_gbp_raw to be used in following commits. Signed-off-by: Gavin Li Reviewed-by: Roi Dayan Reviewed-by: Simon Horman --- lib/odp-util.c | 9 +++------ lib/odp-util.h | 8 ++++++++ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/lib/odp-util.c b/lib/odp-util.c index 2ec889c417e5..f62dc86c5f9e 100644 --- a/lib/odp-util.c +++ b/lib/odp-util.c @@ -3162,8 +3162,7 @@ odp_tun_key_from_attr__(const struct nlattr *attr, bool is_mask, if (ext[OVS_VXLAN_EXT_GBP]) { uint32_t gbp = nl_attr_get_u32(ext[OVS_VXLAN_EXT_GBP]); - tun->gbp_id = htons(gbp & 0xFFFF); - tun->gbp_flags = (gbp >> 16) & 0xFF; + odp_decode_gbp_raw(gbp, &tun->gbp_id, &tun->gbp_flags); } break; @@ -3753,12 +3752,10 @@ format_odp_tun_vxlan_opt(const struct nlattr *attr, ovs_be16 id, id_mask; uint8_t flags, flags_mask = 0; - id = htons(key & 0xFFFF); - flags = (key >> 16) & 0xFF; + odp_decode_gbp_raw(key, &id, &flags); if (ma) { uint32_t mask = nl_attr_get_u32(ma); - id_mask = htons(mask & 0xFFFF); - flags_mask = (mask >> 16) & 0xFF; + odp_decode_gbp_raw(mask, &id_mask, &flags_mask); } ds_put_cstr(ds, "gbp("); diff --git a/lib/odp-util.h b/lib/odp-util.h index a1d0d0fba5de..cf762bdc3547 100644 --- a/lib/odp-util.h +++ b/lib/odp-util.h @@ -374,6 +374,14 @@ void odp_put_push_eth_action(struct ofpbuf *odp_actions, const struct eth_addr *eth_src, const struct eth_addr *eth_dst); +static inline void odp_decode_gbp_raw(uint32_t gbp_raw, + ovs_be16 *id, + uint8_t *flags) +{ + *id = htons(gbp_raw & 0xFFFF); + *flags = (gbp_raw >> 16) & 0xFF; +} + struct attr_len_tbl { int len; const struct attr_len_tbl *next;