From patchwork Mon Nov 4 11:04:55 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Felix Huettner X-Patchwork-Id: 2006192 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=stackit.cloud header.i=@stackit.cloud header.a=rsa-sha256 header.s=selector1 header.b=SaV8Y0wp; dkim=fail reason="signature verification failed" (2048-bit key) header.d=stackit.cloud header.i=@stackit.cloud header.a=rsa-sha256 header.s=selector1 header.b=SaV8Y0wp; dkim-atps=neutral Authentication-Results: legolas.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=patchwork.ozlabs.org) 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 ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4XhpbY1fcdz1xwF for ; Mon, 4 Nov 2024 22:07:53 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id 88FA2410E5; Mon, 4 Nov 2024 11:07:51 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id Yr78268NliPz; Mon, 4 Nov 2024 11:07:49 +0000 (UTC) X-Comment: SPF check N/A for local connections - client-ip=140.211.9.56; helo=lists.linuxfoundation.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver= DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org 77002406BE Authentication-Results: smtp4.osuosl.org; dkim=fail reason="signature verification failed" (2048-bit key, unprotected) header.d=stackit.cloud header.i=@stackit.cloud header.a=rsa-sha256 header.s=selector1 header.b=SaV8Y0wp; dkim=fail reason="signature verification failed" (2048-bit key) header.d=stackit.cloud header.i=@stackit.cloud header.a=rsa-sha256 header.s=selector1 header.b=SaV8Y0wp Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by smtp4.osuosl.org (Postfix) with ESMTPS id 77002406BE; Mon, 4 Nov 2024 11:07:49 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 58198C08A6; Mon, 4 Nov 2024 11:07:49 +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 22796C08A8 for ; Mon, 4 Nov 2024 11:07:48 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id 2CDAF408F0 for ; Mon, 4 Nov 2024 11:05:25 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id Xzaa74YosgKa for ; Mon, 4 Nov 2024 11:05:17 +0000 (UTC) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2a01:111:f403:2612::60e; helo=eur05-am6-obe.outbound.protection.outlook.com; envelope-from=felix.huettner@stackit.cloud; receiver= DMARC-Filter: OpenDMARC Filter v1.4.2 smtp2.osuosl.org 8545B40A15 Authentication-Results: smtp2.osuosl.org; dmarc=pass (p=reject dis=none) header.from=stackit.cloud DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org 8545B40A15 Authentication-Results: smtp2.osuosl.org; dkim=pass (2048-bit key, unprotected) header.d=stackit.cloud header.i=@stackit.cloud header.a=rsa-sha256 header.s=selector1 header.b=SaV8Y0wp; dkim=pass (2048-bit key) header.d=stackit.cloud header.i=@stackit.cloud header.a=rsa-sha256 header.s=selector1 header.b=SaV8Y0wp Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2060e.outbound.protection.outlook.com [IPv6:2a01:111:f403:2612::60e]) by smtp2.osuosl.org (Postfix) with ESMTPS id 8545B40A15 for ; Mon, 4 Nov 2024 11:05:06 +0000 (UTC) ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=sCJhnKeBVuMBOcEvpf8YTXBDwG7iiXl9fMUu1vAwSOKWr/yBy8aHTRH/qQZSToPBL+hN+7iK7TxggyI/Yu0MeSiR5E8FAsV+yOVhnQm6NNuKHtct9bPHclEV8o8quUWm+99rlNwWju/DD+5S3diPYpZ/SbFT0R7wkrTXdVT7xGSk96tGNE0XaN3n/OHzGGTYHMJHU2IT56TNSDz4cqxZkMGsF4o+mP6vkNCNWW2NmX4FbVtOlRQSxDS0YtpdWIvCrQDqLrFEhuoBUGwNKcoGRJEGccrYhpyIpjthyCSuXFyxvHTjhPGomamAmSRLv7ax2kEgnfRQJSSy/NqF++Cj+A== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=inSM54uhhL3MJM4LnOHfWZEQyBdQGovNtiyXnjiyzkE=; b=iKyLH7JRazO6VYMjKBkvqqKlisyEnzfF+iAK9k4hYErO5rO4UonNy0/cvuf6aSA95FkZmmP7GjfCr8zi4SdAJjmsA2kbJVH8SEIDUsXTIJXhtqK5nPryfmeRr7IVQUuXqpg6F43doWc38TY2Yt4x7S844r9acnNl4RG92hxqd4lfE020CNuS6fWyB+27Wv3zjXY6J1+OD6feFNG96awTGESxO+i7o/wzpDby73WWD7GSG/7lwydPYShgXUcp4HtB7jFXuE/J6IxuegmG3G/3QZoDhbZmZJmGLzPDzsDZwMimyUn/Rpm0scIwg2FLkD+4mpUQLjasqgYXVx4Lnqp3XQ== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=fail (sender ip is 104.40.229.156) smtp.rcpttodomain=openvswitch.org smtp.mailfrom=stackit.cloud; dmarc=pass (p=reject sp=none pct=100) action=none header.from=stackit.cloud; dkim=pass (signature was verified) header.d=stackit.cloud; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=stackit.cloud] dkim=[1,1,header.d=stackit.cloud] dmarc=[1,1,header.from=stackit.cloud]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=stackit.cloud; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=inSM54uhhL3MJM4LnOHfWZEQyBdQGovNtiyXnjiyzkE=; b=SaV8Y0wpXUi0G7N7lKTUDzm1ObVm4fq8PxdM9aE8+McZCPr2XXY+YjlGBOMIlkz8L56q1KkEJ1qydgpthbObOeee+Q0pMp3Qz7w3ud/A4iq2o4ZxDdWOjc7StJy3+IML+grwAaepxUrGI/lwfUCVbaA0mgQsxbRjkV7jJKZJ86DVF2nQl8wdpJv8Xl3x/gZcG6uay+Bus8cu8oxkVRP9ndkDx8dOUSWocoOvx6eCOuOqguX3LSwPGnhZdBIj99r/pFhL/YzwvzIgi8xJCqVuk5Jcfb68xX4mS8qv9Wx+EkSPnUBljhgJDATdYPRQeU2hBne8nsZgFVkYzgmXT5A2rw== Received: from AM8P190CA0003.EURP190.PROD.OUTLOOK.COM (2603:10a6:20b:219::8) by DB4PR10MB6311.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:10:381::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8137.17; Mon, 4 Nov 2024 11:04:59 +0000 Received: from AM4PEPF00027A6B.eurprd04.prod.outlook.com (2603:10a6:20b:219:cafe::8c) by AM8P190CA0003.outlook.office365.com (2603:10a6:20b:219::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8114.30 via Frontend Transport; Mon, 4 Nov 2024 11:04:58 +0000 X-MS-Exchange-Authentication-Results: spf=fail (sender IP is 104.40.229.156) smtp.mailfrom=stackit.cloud; dkim=pass (signature was verified) header.d=stackit.cloud;dmarc=pass action=none header.from=stackit.cloud; Received-SPF: Fail (protection.outlook.com: domain of stackit.cloud does not designate 104.40.229.156 as permitted sender) receiver=protection.outlook.com; client-ip=104.40.229.156; helo=eu1.smtp.exclaimer.net; Received: from eu1.smtp.exclaimer.net (104.40.229.156) by AM4PEPF00027A6B.mail.protection.outlook.com (10.167.16.89) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8137.17 via Frontend Transport; Mon, 4 Nov 2024 11:04:58 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (104.47.18.113) by eu1.smtp.exclaimer.net (104.40.229.156) with Exclaimer Signature Manager ESMTP Proxy eu1.smtp.exclaimer.net (tlsversion=TLS12, tlscipher=TLS_DIFFIEHELLMAN_WITH_AES256_NONE); Mon, 4 Nov 2024 11:04:58 +0000 X-ExclaimerHostedSignatures-MessageProcessed: true X-ExclaimerProxyLatency: 5528566 X-ExclaimerImprintLatency: 4237720 X-ExclaimerImprintAction: 2929eaa0113441aa8351d8806832a1b8 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=DAFJbIxrJb9/edPgdCNk73sz2hm+0WZnn5ZUwcp8toXm4O3/svE0eeVQYS84wxWw05LarsB8ayOIuLnIW6Hy2kSZ6ItL8ymYiAr6/wJWv8L9q+g/Dv6rlB7AGIAoMw1VRvRf19D5pQJc9Tg/AJtNr1YTTyI9cMzlI470ydCcSU0hjw6cxCPiJdmve0p3FNEHZlRPxqZJ3Q5WAA/NEDbzO24nWEpLRLMiUYDRCZentTzPMobrWJV0RgnsV3EX+wJxYfCqpkN6uoPA2PbfJdZlXx/kn9FMsSk2iageMIiKT5CVIdFGaE4SGBoeUINqF/4CZrSinxdVnyThHCjlXgE9eQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=inSM54uhhL3MJM4LnOHfWZEQyBdQGovNtiyXnjiyzkE=; b=gpA5XRbphJAnI+78ivWeUYWaqTFwm4gu95Nu2IjCFR+sdemSFJxENICO7dwLdZ/BNZvHOBaM9mCYIablK0i2WeFmdVBYqA7iVPDsILk+3l4hOekXeG0RF7bnOX7eb05SPmT7Lp8UqLUaVEhnjUPGbVKev+odF5LhxJ69cPAq0DcFqtDB2IdKhxEPSyKpqut3fE7/kAE1aGE6xIiZtwD5g/dtA7QCC4MsVMDWqWTwWDUqsSzIqlJaKrJyCukMVLoe06krKe9D1r5EcXNiBhhLusf0LdOjJ4TQyeXU5p+qIKqSrh9SEW+Ts/dGdG3ETpBrTWkpalVogdYsVHtkbJcAoQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=stackit.cloud; dmarc=pass action=none header.from=stackit.cloud; dkim=pass header.d=stackit.cloud; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=stackit.cloud; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=inSM54uhhL3MJM4LnOHfWZEQyBdQGovNtiyXnjiyzkE=; b=SaV8Y0wpXUi0G7N7lKTUDzm1ObVm4fq8PxdM9aE8+McZCPr2XXY+YjlGBOMIlkz8L56q1KkEJ1qydgpthbObOeee+Q0pMp3Qz7w3ud/A4iq2o4ZxDdWOjc7StJy3+IML+grwAaepxUrGI/lwfUCVbaA0mgQsxbRjkV7jJKZJ86DVF2nQl8wdpJv8Xl3x/gZcG6uay+Bus8cu8oxkVRP9ndkDx8dOUSWocoOvx6eCOuOqguX3LSwPGnhZdBIj99r/pFhL/YzwvzIgi8xJCqVuk5Jcfb68xX4mS8qv9Wx+EkSPnUBljhgJDATdYPRQeU2hBne8nsZgFVkYzgmXT5A2rw== Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=stackit.cloud; Received: from PAVPR10MB6914.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:30d::9) by PA2PR10MB8449.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:425::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8137.16; Mon, 4 Nov 2024 11:04:57 +0000 Received: from PAVPR10MB6914.EURPRD10.PROD.OUTLOOK.COM ([fe80::f00d:feeb:e45e:54f8]) by PAVPR10MB6914.EURPRD10.PROD.OUTLOOK.COM ([fe80::f00d:feeb:e45e:54f8%7]) with mapi id 15.20.8137.013; Mon, 4 Nov 2024 11:04:57 +0000 Date: Mon, 4 Nov 2024 12:04:55 +0100 To: dev@openvswitch.org Message-ID: <90ba2b325d56d71d191b6d064f87b4677960ca8f.1730713432.git.felix.huettner@stackit.cloud> Mail-Followup-To: dev@openvswitch.org References: Content-Disposition: inline In-Reply-To: X-please-dont-add-a-signature: thanks X-ClientProxiedBy: FR3P281CA0107.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a3::17) To PAVPR10MB6914.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:30d::9) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: PAVPR10MB6914:EE_|PA2PR10MB8449:EE_|AM4PEPF00027A6B:EE_|DB4PR10MB6311:EE_ X-MS-Office365-Filtering-Correlation-Id: 8468a98c-b108-4afe-fa89-08dcfcc085c8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|376014|1800799024|366016; X-Microsoft-Antispam-Message-Info-Original: OpER7TUieMslInwH3acr8iMnDB7aHqeg800PPxIs37xAVlMDXiQSPpMo8EMkiIzj3Wu9L3i0zuhy5R9O//nIQU0Erysu5UssvtszanvEjV/d0psikB3Sp+AwyuwjKUATFN6ukUEFsijVC8R/lAYaKcdWk8sPiJcS6omBleskS6kHn8H9Unpis2PrVMN6YaOKa3uZ12Ug7vIhHAyCA84La7tMMkHLrtWkm5L1FnBaFFPh5gNamL4Uz5TI20M5Hu/wCixL7cSmQbIknX9Cojm7oqHS+D9F8SIrQJEGA2dAqJHcEMb349/GT4b2curOTsUsb7kfsQFS7OZvwqL5ebx2OL9SqHod1e7fjuBMxkIzhZYzgzUMevR/DPuin4OTw0ubwlMPI5+zw0uOnvgYybRyLylf71GSXkNgX6Tm3/FJd+oWCFxvLOXDLPHcUwr2eW1g1gaWOQhFY9LpwdRQ3ekgdAljzfOZf+2ak88g8JKh5pci+zIirysxs/GuHBec/kN55by0tPX0f647vtCzki2LE01SUOI7p65sxrOCsM2Y7sPTokQeNfyXEc02O0qspk3iBDXxOXe8thlSfm9DquPNeKiL2dngXMri7uVBdUouUD2T5E1WtDYwMKx1jHRN/rZaMcE2DStC8MNi/JjY9xhx/i0A2wGhHrf06I7BM5uYgNvMCNQNKQa6/51AzDMZcgzKMfLD8wuf2q8btzjOok5D+WhzCpgn+6Xia9IvLdAxn1Djqxtt10GlndA1TVaFXEgj53Scqt2DVqYXwggJMhHQo7Ox1L/ShmX0Ub4ZImDhQz8DkjfP44E2E8Dl9BOvdDt4OH7RT8Tk8VKQgIjfu9L1MiSl1MOT85pc/mXxwDNXSMmPldmc9FZNUH54o3x7egK8IqqEuWzRXFA+7yzBaNA7sdQPlKUAbB1C6bN9zldCnRCZ0q51ktzIrXEgCYH3jeCX9oB02mITp/XdlwwT+z0pv/TypSw+SULTYQ/u2URvFG0aOS77IUIJjqQeUy/ADz+7wqoGuEqY6ejTEomSnOLeMB79YD9Fvzsg2C0gavZVR466R7K4fQG5yApDFUk/bAqOhDJQY7/oztfVdnTXuWzDMldLyO1a5NN+aampKyYmRod6vDC3HogPx0S7xR4+L0MAkRMmW2RZA4FeyII3Gv1yEJWqxrIKWKOoL1cFHlCtwQli3zZRDj8FtaaRRYjCohe3i9V5NOmu1x37GNns8NEJMbqrDgaKOhVJ6/hvgvjS2JQVH+/6vEJwOOBraAkKi1bOj7z93iUlE7WUvdRAxMmtrSdsaV+KVfV/vAdc8XUcDLeV9WDNu6WzQeds9NIetzXG X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PAVPR10MB6914.EURPRD10.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(13230040)(376014)(1800799024)(366016); DIR:OUT; SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA2PR10MB8449 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM4PEPF00027A6B.eurprd04.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 404bfaa4-8153-4214-f47f-08dcfcc084c8 X-Microsoft-Antispam: BCL:0; ARA:13230040|376014|35042699022|14060799003|82310400026|1800799024|36860700013; X-Microsoft-Antispam-Message-Info: H5iAvhwKodIffwSA232hN9H5E/ZPLDynRSn3qvPKFJnxZ6fPD1SLKz37i5Kavc+4DabOlmItvHt7rZgHWwudfXbWyQemNzIomMmyIav+VxBx9xOe1u74AZdiZwjWXEorLZtkh9QMUBEgjLEt8Yxs0QEVCtWgccv78YHE5VJRspETKWmRTS5CZ7k8EUaNSf9t5jWYPNLXySIAIyhD5JFo8JfgzTBJGsw7tBzckqVb5ItYl4DKT2us+na6WfuuD1V9r2oKOx7sWEBUbIi2tyuI9KZ97rKzHjo4BN1DmWEDbD/XE/4ywCOMvz/Ex2rBpB81HruhoKEookbIVQblKUYKW1BKtZ/2byeRE9CHouZV4BPKeZqlGtsH5mksVxWlWQH/QEeDAVryCOQPZDtT4mNO+nhCTaKKPXV3jepNP/ausC0wx9XgBHT/Ugu4H9j9QwMUafFU7GULCEgQcXXJQ2l252Xif4liVGVb170467HA3wrNjxjautpdDVcO0dtk7TtO37iDgTy/owl2VIzqvXxwkCyVrI+nPbUa9is8PF0jPT1MruDcbbBewQM69VJSNFOIxc+JKud7e7earvuAFTOsQ7MO0edJo5jUcO87hPfKbmlSwipESi2bMdGYSjGbiRLUgMveI/eb5cLvYtMAAL9p3WSWxnkkNvJXNVB7RpTp2V/4WVAlsrFc0a9rZnm+j/xI3y5YVNSlVLirSHZLKIEbNxTPsRMbi9Wex4BvC9vsto1qbVJyOYtgj0ogw0ArFut2yTXga7k4HrQpVA7eADK8AcyfdB7eTC8uLsA0PDpotkOyA6xUs9jF0xDupTNt9lYC5yuFeOeKktc9ZC0xt+5ivaCzkvwTlKh9EBreQ29CwnjNk7HI4h22XduSPK5z++g4DjKZaN7sIjEPw6UirnXhtQTnYRspCVpdSfQWs/ADRM87G1Va3c88PjgfSNsUzE/6FBz/T0IcTuztay0uvcDBWim67IuOPt+v5ei2ZA0//eaJbyRp4xgO+8vcafZ2+a7KFMs7Q4tJJDgs2pqn8PeOchm8k7IrqDB/5S5fs5dvEcsbp+nWAGbVW9Gdh0un9AEyJ3KECxzr+AoIlekgvT7gZC4KZWRlQ8lgr+Xym20mA6BqCCWm9VvLsKteSNHW3csRdAj0X825DdeuJhSqf2iye8r2Dgi4t4ct4gfbnmXqimj9HpGNGfvHUQVciSGppvn6BAa0rKGKDIPLYZXhHc6Fr9aDXCuPGd3xPygmu8bSeOpHV2Y+Mj3bBcKUyMdShtlTUlwxPePDYcFtfJ3iFAGfl+DEDerE08lj6UWtceQ4xV5y+8whZVZ/kJCKGqZZpM2xNmFEeVIgEZWK4+JMhUjCs2DoBSpTuNYTubOGlIknihLfwvZnUR0io6Nl3vKMjE+lb6sN3whhFZN/6bMywSQmtQ== X-Forefront-Antispam-Report: CIP:104.40.229.156; CTRY:NL; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:eu1.smtp.exclaimer.net; PTR:eu1.smtp.exclaimer.net; CAT:NONE; SFS:(13230040)(376014)(35042699022)(14060799003)(82310400026)(1800799024)(36860700013); DIR:OUT; SFP:1101; X-OriginatorOrg: stackit.cloud X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Nov 2024 11:04:58.3854 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8468a98c-b108-4afe-fa89-08dcfcc085c8 X-MS-Exchange-CrossTenant-Id: d04f4717-5a6e-4b98-b3f9-6918e0385f4c X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=d04f4717-5a6e-4b98-b3f9-6918e0385f4c; Ip=[104.40.229.156]; Helo=[eu1.smtp.exclaimer.net] X-MS-Exchange-CrossTenant-AuthSource: AM4PEPF00027A6B.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB4PR10MB6311 Subject: [ovs-dev] [PATCH ovn v2 30/32] northd: Support active-active bgp redirects. X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Felix Huettner via dev From: Felix Huettner Reply-To: Felix Huettner Errors-To: ovs-dev-bounces@openvswitch.org Sender: "dev" add support for routing-protocol-redirects in combination with active-active routing. Signed-off-by: Felix Huettner --- northd/northd.c | 50 +++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 48 insertions(+), 2 deletions(-) diff --git a/northd/northd.c b/northd/northd.c index 6884b7a0e..05edb1cad 100644 --- a/northd/northd.c +++ b/northd/northd.c @@ -2343,6 +2343,7 @@ join_logical_ports_lrp(struct hmap *ports, struct active_active_port { const struct nbrec_logical_switch_port *nbsp; + const struct nbrec_logical_switch_port *routing_protocol_redirect; const struct nbrec_logical_router_port *nbrp; struct ovn_datapath *switch_dp; struct ovn_datapath *router_dp; @@ -2410,6 +2411,7 @@ join_logical_ports(const struct sbrec_port_binding_table *sbrec_pb_table, ovs_list_init(both); struct shash active_active_ports = SHASH_INITIALIZER(&active_active_ports); + struct shash aa_redirect_targets = SHASH_INITIALIZER(&aa_redirect_targets); const struct sbrec_port_binding *sb; SBREC_PORT_BINDING_TABLE_FOR_EACH (sb, sbrec_pb_table) { @@ -2438,6 +2440,12 @@ join_logical_ports(const struct sbrec_port_binding_table *sbrec_pb_table, aap->nbrp = nbrp; aap->router_dp = od; shash_add(&active_active_ports, nbrp->name, aap); + + const char *redirect_port_name = smap_get(&nbrp->options, + "routing-protocol-redirect"); + if (redirect_port_name) { + shash_add(&aa_redirect_targets, redirect_port_name, aap); + } continue; } @@ -2468,6 +2476,12 @@ join_logical_ports(const struct sbrec_port_binding_table *sbrec_pb_table, aap->switch_dp = od; continue; } + struct active_active_port *aap = + shash_find_data(&aa_redirect_targets, nbsp->name); + if (aap) { + aap->routing_protocol_redirect = nbsp; + continue; + } join_logical_ports_lsp(ports, nb_only, both, od, nbsp, nbsp->name, queue_id_bitmap, tag_alloc_table); @@ -2551,6 +2565,8 @@ join_logical_ports(const struct sbrec_port_binding_table *sbrec_pb_table, SHASH_FOR_EACH (aa_snode, &active_active_ports) { const struct active_active_port *aap = aa_snode->data; const struct nbrec_logical_switch_port *nbsp = aap->nbsp; + const struct nbrec_logical_switch_port *nbsp_rpr = + aap->routing_protocol_redirect; const struct nbrec_logical_router_port *nbrp = aap->nbrp; ovs_assert(nbrp); ovs_assert(aap->switch_dp); @@ -2637,6 +2653,18 @@ join_logical_ports(const struct sbrec_port_binding_table *sbrec_pb_table, lsp->aa_chassis_name = xstrdup(chassis->name); lrp->aa_chassis_index = j; lsp->aa_chassis_index = j; + + if (nbsp_rpr) { + char *lsp_rpr_name = xasprintf("%s-%s-%"PRIuSIZE, + nbsp_rpr->name, + chassis->name, j); + join_logical_ports_lsp(ports, nb_only, both, + aap->switch_dp, nbsp_rpr, + lsp_rpr_name, queue_id_bitmap, + tag_alloc_table); + free(lsp_rpr_name); + } + } free(networks.network_name); free(networks.addresses); @@ -2701,6 +2729,7 @@ join_logical_ports(const struct sbrec_port_binding_table *sbrec_pb_table, ipam_add_port_addresses(op->od, op); } + shash_destroy(&aa_redirect_targets); shash_destroy_free_data(&active_active_ports); } @@ -14379,6 +14408,20 @@ build_arp_resolve_flows_for_lrp(struct ovn_port *op, } } +static char* +ovn_port_get_redirect_port_name(struct ovn_port *op) { + const char *rpr = smap_get(&op->nbrp->options, + "routing-protocol-redirect"); + if (!rpr) { + return NULL; + } + if (op->is_active_active) { + return xasprintf("%s-%s-%"PRIuSIZE, rpr, + op->aa_chassis_name, op->aa_chassis_index); + } + return xstrdup(rpr); +} + static void build_routing_protocols_redirect_rule__( const char *s_addr, const char *redirect_port_name, int protocol_port, @@ -14512,8 +14555,7 @@ build_lrouter_routing_protocol_redirect( /* Proceed only for LRPs that have 'routing-protocol-redirect' option set. * Value of this option is the name of LSP to which the routing protocol * traffic will be redirected. */ - const char *redirect_port_name = smap_get(&op->nbrp->options, - "routing-protocol-redirect"); + char *redirect_port_name = ovn_port_get_redirect_port_name(op); if (!redirect_port_name) { return; } @@ -14529,6 +14571,7 @@ build_lrouter_routing_protocol_redirect( "Switch Port. Routing protocol redirecting won't be " "configured.", op->key); + free(redirect_port_name); return; } if (lsp_in_peer->od != op->peer->od) { @@ -14539,6 +14582,7 @@ build_lrouter_routing_protocol_redirect( "option. Routing protocol redirecting won't be " "configured.", op->key, redirect_port_name); + free(redirect_port_name); return; } @@ -14550,6 +14594,7 @@ build_lrouter_routing_protocol_redirect( "were set via 'routing-protocols' options. This " "configuration has no effect.", op->key); + free(redirect_port_name); return; } @@ -14597,6 +14642,7 @@ build_lrouter_routing_protocol_redirect( ds_cstr(match), REGBIT_PORT_SEC_DROP " = 1; next;", lflow_ref); + free(redirect_port_name); } /* This function adds ARP resolve flows related to a LSP. */