From patchwork Wed May 18 14:18:41 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: lin huang X-Patchwork-Id: 1632837 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=outlook.com header.i=@outlook.com header.a=rsa-sha256 header.s=selector1 header.b=hQm2IUuy; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org (client-ip=2605:bc80:3010::133; helo=smtp2.osuosl.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Received: from smtp2.osuosl.org (smtp2.osuosl.org [IPv6:2605:bc80:3010::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4L3FVR3zQJz9sGp for ; Thu, 19 May 2022 00:19:27 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id BCF3440FE3; Wed, 18 May 2022 14:19:24 +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 qLgmnt72U1tt; Wed, 18 May 2022 14:19:23 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by smtp2.osuosl.org (Postfix) with ESMTPS id 92E2D40FEB; Wed, 18 May 2022 14:19:21 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 7A6B1C0086; Wed, 18 May 2022 14:19:20 +0000 (UTC) X-Original-To: ovs-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 5177AC002D for ; Wed, 18 May 2022 14:19:18 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id 280DD61082 for ; Wed, 18 May 2022 14:19:17 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Authentication-Results: smtp3.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=outlook.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 mX0lDVlmIRCq for ; Wed, 18 May 2022 14:19:16 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 Received: from AUS01-ME3-obe.outbound.protection.outlook.com (mail-me3aus01olkn20828.outbound.protection.outlook.com [IPv6:2a01:111:f403:7004::828]) by smtp3.osuosl.org (Postfix) with ESMTPS id 630A261207 for ; Wed, 18 May 2022 14:19:16 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=S8y9kTi8AncNoX1hTVh8BHKJYrYJq4esu8RpJff5MzRTY0hn8BmfnXYntUqYjLWxia/5aECbD5CQtCiBKcZ2ZGRqkDtEgda4KiJ7oEeUkB4horg/2jDmvPK+EJ0/jjpmBTWkSWHW04zhl9BysJwF3G8VsMOqVKzM4mKQVoOtoAMOoE9HeXqrdc3Mmg9sRs9/6wQ7dpRxDr6gQABWHcBOilvODhwqDlm4AlZKw3bJgdF7qjRsIaDkiK02gP25792wg5dmjU3+bdU8reC3rtEHThRncgY6qaixE9Pox5RDJyimmC2Mmu9IaaxiXQzgmxf59e/fYG8Z8gj2YMiGciI09g== 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=wLnWueEnkbe/zQamciBcaysZWGDa+Pnx5i/MflhH+Pk=; b=RiXuWXIQPJbsjsWomnR8kpMaDaQUf2SaLADO29AwxOWBvSwLiaz6rysHvXx0pUW5jFygPz3b2SYAPNUTXaRR3T9hcZLv495dghuMYYCrrJdbYE7LF53D85RdCofKzrF3B7I+DOgPwKc3AIm/zYqJPy7R78jY4IAVrUqzrZOR12G6XCGfskEOYluwuPGrHtEHHmEfjgunhY/UYgISdZ8ckiKpb3dcmLyqsPwAJSj/TOJ5FsmtmZVF3Z1dr3jWOZeZqk/OFU+iqCqivpsVCUNexod15mlcOoTiBdM4a2b1sJm33eiQ0ImJKT8afT2nC3nNP3ljgqpcLjS/64BdiSC8RQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wLnWueEnkbe/zQamciBcaysZWGDa+Pnx5i/MflhH+Pk=; b=hQm2IUuyomaGKYD3Rp6mP/HD6NqDLxMsL8mX7tLhyNJN/Be6aT5ctL/fTwpS/RVdPGmJPPTrdKt7omkbnkeW022zeTegB9P4wG72T42M1hDPBBncFiyyWXToTw6cDPu3yuMEFJdNfHUQpa00kaym9DNvP+KLNKnh7O3Q+dvqRjDkHSM40BVVxL93qpH/DZwL6ISQl3z1mNiEzKArGfAoahkxpcLPa9gYr/kX0S9xnFaw1FdKHKl5fNdBo8AbgR37GEcNAlfRiJI2pESJMf51HhGiYhXweyvsJa2FCkCz4ISzA2bVNg9WLaKicnqBEviFjqdezsma9oHDKOzZrEMy4w== Received: from ME3P282MB3507.AUSP282.PROD.OUTLOOK.COM (2603:10c6:220:18a::13) by ME3P282MB2711.AUSP282.PROD.OUTLOOK.COM (2603:10c6:220:168::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5273.14; Wed, 18 May 2022 14:19:13 +0000 Received: from ME3P282MB3507.AUSP282.PROD.OUTLOOK.COM ([fe80::f437:b1a4:3950:938f]) by ME3P282MB3507.AUSP282.PROD.OUTLOOK.COM ([fe80::f437:b1a4:3950:938f%5]) with mapi id 15.20.5250.018; Wed, 18 May 2022 14:19:13 +0000 From: miterv@outlook.com To: ovs-dev@openvswitch.org Date: Wed, 18 May 2022 22:18:41 +0800 Message-ID: X-Mailer: git-send-email 2.36.1.windows.1 In-Reply-To: <20220518141841.958-1-miterv@outlook.com> References: <20220518141841.958-1-miterv@outlook.com> X-TMN: [gn1uyjcIOtkhR17c8EoVwrBuyTRVo4d2] X-ClientProxiedBy: TYAPR01CA0007.jpnprd01.prod.outlook.com (2603:1096:404::19) To ME3P282MB3507.AUSP282.PROD.OUTLOOK.COM (2603:10c6:220:18a::13) X-Microsoft-Original-Message-ID: <20220518141841.958-3-miterv@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 357f2d8e-0345-4464-51ab-08da38d9624b X-MS-TrafficTypeDiagnostic: ME3P282MB2711:EE_ X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: S8cd4ZeL7VvBDaazZW6yXSdcW12AigO1tvEqXgliUkIrfue/imOE9jFVtYB7QwF8XE3WznMInHlodk7XXzgiLqxCXbcp7favtjUjHfqOSKAAchVOvFTX+B8NWPiZK6VEIgVtDsBPitgZDBT55VpHqKeOxXX2uvC+L5RONEtx75il6GytSuhyNj5B6kN+s4zVyvlpoNGLjvLtO0WJX6Cx+l+e8Xj73NuHq+lU+NwBUmX38pIvbFHOoUaoSV1QYbORZaC73OXp8Nr55Bpg4uWdzB6QVlIbitGQNEX6Ire64LdSQbCssFHqJKVAiDlOfFcszdGNRIYQaUB8ygwgPyKnGp1PrmIzKFJeGgHT1vZLuPC1ueuv5bt/YAaqYRdCvYBCRrvdyjRa4hKE6NVkgdRfByxmeU5ax27YSgzW+PgEOiqssNQiykDyrWUEudyfdrufXcJf8aRA79dqLOv0cy/Tlb3tUSaB/2v/ZafTIlWhQdYg+vDPDVoboHGNIp3vbLRGilSV7pQP4/8xSWu5nQPefNSbyTFlq9yWcT2leLHdhMI0N2QXjnaWiPbe56fLBTNwfYkbmJMERuN2RJDlnZVTZA== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: PlGTzqAWJXtGWj/lNHpedmYuM17zGPOK2Ew1jmiaIX4+g+/cl0AHCUsKkX3tWHIZLa6CI2HoFpuSkEUM9JrwMjDWUwwU6/BE8u/SyuDXcn2LKb1W74NnUL+cniEZ4PgJcCon/TkFGDrGIw/MH1SLqjLOPhU3P4ARQJccIMAuEf3GO+nJXWAMLUn2Ija2OMNWSpIQ4YCGcIWL+ZO0FkgToeXtQmpnUofZEK4ai8FXuSzQIihIHPEaaOh8Re1OEcaiEupcCpqdHHU0JMA6pyjH3yjL/kzM37iUH/tNRZ7iMf+np5em1z+t/fWcNyBNNz9atc66/giBO8IUYZngVfD3p6gpNL2HeHe6FJfbF+UWzx7mgc2kmDudrl1lwFZW9a9CGiOE0smjM3yp80vFLsZOKAjqpKJTtNb0Gw/q2JH7og3LctbDUyGDlAnpSA3+zF9wn2fpz/ufS+X5H7Df28Y82dY3EICRzPuCSUD/v8Y+ovLzQFs3Q5pPZ72PQjMh2G+KU5cWYZ4/bj/8Dg6HUl1of0kl6bJNPMtJmKAkgOU0gVv0kMtyhMVT9OdEl1rOS9XSp1oAYFnk2QQubZLoZ9RfIJHvzE++hElKOsfckhwpsZIQ1H5ixtjIiZNsve5MXXEs3D/p9pvhyKK8BidwSwiHL7ADNn2B+k5x6AdwB3bNIk0rTaWql/2TenMLVCk1W1tF1Gve/YV1nu9OAjXB5EslpV2u7D+KoZofIoG8uyDGFJcX9cNYu1DAiKSRocGCg/E+v/eN403b6PJt0tbENCo0gAr59i4rEnPkph84uHocEnq2Xn5qufKw6x2Y0pP/alKi5VR5/Gu2o5+/dZEielbAjNh9SOF6pHH1z2CphXNmlrTSZtDp/CiJK6qNqCXeltOIz36o5TTqOX0umdU+atJ/iDoZid6uLOaG9keVU+dRWz5EQ0tc4yWOCrO10nNnVEJIOXI1saCBkN2cht3seqGjIhQEpq5IuQ2avDTzEcQ0FNyc3OWv75xw8wM7ykakn8V247v89vIf+iQZJXAUwqSmAAKGG9D7bs9UnAAIWA/670Ke4hkwHE0ZcF9w9Yst5pcvVop2aTvcZpGlNOWduzsuOjB8NlP6Qy2XNqpXXhOnPn+7yY9u8LelALXw5V/kwlrx+/FDb3kXlmuq5q6nsQkBRIsPgB4CVJtDti79A/sLLd9BIdcdjmYkLiEC+fBB4sMO7rdTM+aW78OUWyCsUUK5cA68BvA/xdDE10TorqGRB/7EOykZ/kcwODyVQqI023LyFNZ5RUJ1MZ7NN8Hx6ZRE0aJFwmY/kgXRpGm9rBDPWkCMv9PglISMXfaf6pC45nY5zVlhWg35XC2tNj5zVjiHzfAdskbrbO0f7cnAb+DN75HGSEeJB7K1ub57Xdp/Kyp5uDZnXEtOod2Z2iOsNyN1fwfeahba+DP1Tn5RiUd09nM= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 357f2d8e-0345-4464-51ab-08da38d9624b X-MS-Exchange-CrossTenant-AuthSource: ME3P282MB3507.AUSP282.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 May 2022 14:19:13.7163 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: ME3P282MB2711 Cc: Lin Huang Subject: [ovs-dev] [PATCH v4 2/2] dpif-netdev : Fix ALB 'rebalance_intvl' max hard limit. 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: , Errors-To: ovs-dev-bounces@openvswitch.org Sender: "dev" From: Lin Huang Currently the pmd-auto-lb-rebal-interval's value was not been checked properly. It maybe a negative, or too big value (>2 weeks between rebalances), which will be lead to a big unsigned value. So reset it to default if the value exceeds the max permitted as described in vswitchd.xml. Fixes: 5bf84282482a ("Adding support for PMD auto load balancing") Signed-off-by: Lin Huang --- lib/dpif-netdev.c | 6 +++++- tests/alb.at | 20 +++++++++++++++++++- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c index 3597d7e40..33fb8ad81 100644 --- a/lib/dpif-netdev.c +++ b/lib/dpif-netdev.c @@ -93,7 +93,8 @@ VLOG_DEFINE_THIS_MODULE(dpif_netdev); /* Auto Load Balancing Defaults */ #define ALB_IMPROVEMENT_THRESHOLD 25 #define ALB_LOAD_THRESHOLD 95 -#define ALB_REBALANCE_INTERVAL 1 /* 1 Min */ +#define ALB_REBALANCE_INTERVAL 1 /* 1 Min */ +#define MAX_ALB_REBALANCE_INTERVAL 20000 /* 20000 Min */ #define MIN_TO_MSEC 60000 #define FLOW_DUMP_MAX_BATCH 50 @@ -4883,6 +4884,9 @@ dpif_netdev_set_config(struct dpif *dpif, const struct smap *other_config) rebalance_intvl = smap_get_ullong(other_config, "pmd-auto-lb-rebal-interval", ALB_REBALANCE_INTERVAL); + if (rebalance_intvl > MAX_ALB_REBALANCE_INTERVAL) { + rebalance_intvl = ALB_REBALANCE_INTERVAL; + } /* Input is in min, convert it to msec. */ rebalance_intvl = diff --git a/tests/alb.at b/tests/alb.at index 0036bd1f2..922185d61 100644 --- a/tests/alb.at +++ b/tests/alb.at @@ -243,7 +243,25 @@ get_log_next_line_num AT_CHECK([ovs-vsctl set open_vswitch . other_config:pmd-auto-lb-rebal-interval="0"]) CHECK_ALB_PARAM([interval], [1 mins], [+$LINENUM]) -# No check for above max as it is only a documented max value and not a hard limit +# Set new value +get_log_next_line_num +AT_CHECK([ovs-vsctl set open_vswitch . other_config:pmd-auto-lb-rebal-interval="100"]) +CHECK_ALB_PARAM([interval], [100 mins], [+$LINENUM]) + +# Set above max value +get_log_next_line_num +AT_CHECK([ovs-vsctl set open_vswitch . other_config:pmd-auto-lb-rebal-interval="20001"]) +CHECK_ALB_PARAM([interval], [1 mins], [+$LINENUM]) + +# Set new value +get_log_next_line_num +AT_CHECK([ovs-vsctl set open_vswitch . other_config:pmd-auto-lb-rebal-interval="1000"]) +CHECK_ALB_PARAM([interval], [1000 mins], [+$LINENUM]) + +# Set Negative value +get_log_next_line_num +AT_CHECK([ovs-vsctl set open_vswitch . other_config:pmd-auto-lb-rebal-interval="-1"]) +CHECK_ALB_PARAM([interval], [1 mins], [+$LINENUM]) OVS_VSWITCHD_STOP AT_CLEANUP