From patchwork Wed May 11 14:25:07 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: miter X-Patchwork-Id: 1629600 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=j1FuQ25M; 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 (2048 bits) server-digest SHA256) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4Kyy0D5cVnz9sFx for ; Thu, 12 May 2022 00:26:52 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id 0E4DC610F0; Wed, 11 May 2022 14:26: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 e09494SsYd-9; Wed, 11 May 2022 14:26:50 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by smtp3.osuosl.org (Postfix) with ESMTPS id 38D86610D4; Wed, 11 May 2022 14:26:49 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 0A472C0039; Wed, 11 May 2022 14:26: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 18CA0C002D for ; Wed, 11 May 2022 14:26:48 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id B6DB140B73 for ; Wed, 11 May 2022 14:26:39 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Authentication-Results: smtp2.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=outlook.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 oGUP6eQXEnVn for ; Wed, 11 May 2022 14:26:38 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 Received: from AUS01-SY4-obe.outbound.protection.outlook.com (mail-sy4aus01olkn20830.outbound.protection.outlook.com [IPv6:2a01:111:f403:7005::830]) by smtp2.osuosl.org (Postfix) with ESMTPS id 8365F40B84 for ; Wed, 11 May 2022 14:26:38 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Oc/29orQb7h5KFYAdtwNbz4JzsR1DtPU999ABvDhI8VYVfWeue+G4/LzymP+fyuopjs52gy/AxE/7ZizrKv+1gUoxCOKWn2I/AMzaLnqSYSmrfdpgqu4tNB5CBxjZJFQXOXTv3CWtzrwahI+szNfpQFO6DRBkNY3LOLz2IAIxsHCPglWYP5RxKEEotbgowDip16TUIaadMC0WQtwRoNpzOrmtCBzg7XiH9mzTuAbYG71wVbXs86NYFN5dEh/W4HxDZsNYG2+JKHfIMVhDwNWyB5WGwuhCneCUlEY1+YrDP1STi6QkMClVErU1eGNM5Rb/abzj41ykcTNbSWQKP6S+A== 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=oQ1E9xl6pX3jCbpn9tqV4kE3w2U+/+tzLOnmwXuCj0c=; b=Wx1AaYlVPI+68uX8WFydqPDkuk8Yu0H41m53ub5jaa0P/CcyNKPyPD9LjX94VxS19TOqYazy1lyELnijaJyopDyDYE4/yirydMESPkMlDHuPJATw/LXhJRka4PZMc+9rLVvrFZjdgg99cGmP2mvuOdXMh0sOaPH5Hrhx36I+Dbb+JvZVs9tPnLpPk8LG+Gb0AgOuVC5Qld2RHQwHA24GiiKUNzd/aNDONiOcnPIyMYVKGJ7tE/Y6DLiSK25YI540qf3KoZK6pGDvbopxnACxL+cWa0OJOazqJW/7Tm1/N7pt+E5uX1kE7Ba9fdkaolxVLFo9AMBG76xNxT8/vYhgUw== 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=oQ1E9xl6pX3jCbpn9tqV4kE3w2U+/+tzLOnmwXuCj0c=; b=j1FuQ25MPUTOPrffbiqVgLSu7W6nZSG127id4WSZSalnDVEZG/6VfNC1OmZwuDw+jEbTRVC/Z//fUIeT8Waz2o/EecFlpaZlL0rog2cCawr1+/ywcFUTJU7M5NqBo0ZtmX/CPBOAe8KmebIu81k2o971ZuROVWFJ0F2M0PO2cnN2eL55R2pE0Q+AgeVtOqMgSMwL5KPL4xl0PYRvGnizThjW3/hLZBAAtUe+B0xyMg5xs28IS2X1OiThsLXAwn88HrTh3LVRd91dqmRwHbapk22ZMGydCPyO3Iu4QGZrEtsvfMdSwr43MSXfzm8EHcdL+ElEHjDv4mvYuAN/pG7jBA== Received: from MEYP282MB3302.AUSP282.PROD.OUTLOOK.COM (2603:10c6:220:15b::24) by SYYP282MB1567.AUSP282.PROD.OUTLOOK.COM (2603:10c6:10:7d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5227.20; Wed, 11 May 2022 14:26:34 +0000 Received: from MEYP282MB3302.AUSP282.PROD.OUTLOOK.COM ([fe80::f1b0:b062:c467:b9a]) by MEYP282MB3302.AUSP282.PROD.OUTLOOK.COM ([fe80::f1b0:b062:c467:b9a%3]) with mapi id 15.20.5250.013; Wed, 11 May 2022 14:26:34 +0000 From: miterv@outlook.com To: dev@openvswitch.org Date: Wed, 11 May 2022 22:25:07 +0800 Message-ID: X-Mailer: git-send-email 2.36.0.windows.1 In-Reply-To: <20220511142507.2092-1-miterv@outlook.com> References: <20220511142507.2092-1-miterv@outlook.com> X-TMN: [//7SlC3cfPofyxO9jrglLy853qC5oklq] X-ClientProxiedBy: HK2PR02CA0184.apcprd02.prod.outlook.com (2603:1096:201:21::20) To MEYP282MB3302.AUSP282.PROD.OUTLOOK.COM (2603:10c6:220:15b::24) X-Microsoft-Original-Message-ID: <20220511142507.2092-3-miterv@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 0a8f7962-254f-4b83-3519-08da335a4017 X-MS-TrafficTypeDiagnostic: SYYP282MB1567:EE_ X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rJyi3Ip4lMTG1kUsQWTXevaqbDMLAXNrMF93snLWk+zV/08A8tQf253qMHs1a838hkr1piqfqEZXgsYSJPJ3efr5/QBGA27DM7yBxPYXz5GbAIZaVbZqlKxnTJWonNtsZxj+xzATitWC2hIMJ8QwPA2WWuZ9Zl4As4GIePJDvQMLjDBChMZScR8yWBB5ZeGFAQhs0C56OZT5XJPkjVjB+Qk/gNtiV1cWC6McJS2xqXbehBAXC73zs2kRbDmzrgz8xDf8/BZ243IxHxHJhuDOUKtUYt9ePO6OELe8ZvEZBKZcG5FHtDFHZm0ql/iOyWeB75bZu6tzYu4qWOgu83X+ZV57wB9rDfJWA7ZvtpO+j/5us3i+JZfI9mhy9ZwMh5h0LOuY/9Yg4AdOjSXZUO8gpKEO0qOB/Ba/ENEVD0wbgTC/VDbxS76r1t6AFwexpiwToaJbUrgMnuhr5ftiwPfZNltrayySLTeuTtYQckDLz6QQvRU3/+mbMOo7jnQXBeL6lpq+VgKSxcQxrvJYIwpdLjDePwyB2wwyzMRFe+i7WJhxoNd25uZGTT5bvv/UNLH5Ofu2PIQtBFaWtV5cyh4c7RMyzDiLxQJ673tWXRhSKTv+bh4hGCQK2oxxH6pI1AnR/ZKJESsLvzDWzBgX16ax7w== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: iVDFD4TIGCdu2wgJRfMFPlTbHvncyQJUGM27eZ1iH/WFTqPQu1DSTvU9YvXHs2XQmwLvidNYlcQ+7qHX4EZunPuy180b339oKqImWP/EA2p08CChdV6PXnyG5KTf5Z9GIHg7Ofvhk6+rgiaMUBsUL8luUxfr1FrVaTIl6GHHhkLfD+tX/0BjnvlgavGUVViuAskDG+cAlt5Ri0UKhsT8sqgRumUFyt8R2+XHEeEPUEkQpuP5ya86pLJ0J3Mzhk7A+0tv0S/4Tf9AoqE0FCu7K6LOHCXc0Qh24nFB0TkbA6D76wwQ2Y97y/OTsAbs+VgpdqY2XcIca7L3HM+90xvy+Tk2JxEQCjTg/V6Hg7sS/y9+iLZrGyRa7M0IIhrVJOMAt6UvV+4oN8XY4kACamlaTgECZexrZrO5ccgC/Vz67nhhNRtWbcBEp7eSJJs4XxMYHMCqpNxw3hQZ+eCC31LkokcWZBfeUZzUBfeGS5No54eYg+y6PG72gHoH1pj1JrDJ8DLHi3QAyZHvzXTwlNJLTShzb/I9IrdyMFyiJH4A5vbiDY5DyLjc4ASaC7dq3A5+fgO4oSx5WUOcWwh1VbFXv1U/SCQ/n1yuPXdpOfm4a+uamgg09Ygjg5DP5+FqF1DMhlzbyPK56Dk7VsugyEoVQuJd2CThVjw35H/ER+d02AzQkJAp+gk0sneP+rpTgBFdblWpl25iCDwUiwQf+5zCiQjYB3m2fhXQNdWkpiDEOjMSXVVfuKmnGCLCQ8goXRASAJM9X5vwatrUQQzTlOs1Q5I7e8iZDJuM8tPRPaZdLlE3eg1569dsBbXb9FMfhpXwDdZYJYYau7tIZsEAEwEvMxmlwo9J91BnSsz33/MsajT8XlTwQE7yqQmQfRkWY++vcw8icixPfSP0Vi2D1EdmV9nZLZfv+xCm7kme/Eg0rpB133NMiUTqTRRYrhWn5FsNIqQF+YVwFfgb3+SSRg/yoCxUSINWj7TiW99j/LwPj4wOVUWG7lymh1H16TCwU0LZUDNllQxr7sHToCVktq0+UMimO1nhJ+3sfBR8imOXGHCeuwNF55by5ccRipBW3qqytoclyRMvUWNKUy/lAXs70fsL311mU0/eFRtfZVYrpbUIy1wkOFnIWg9rd2LB3pFnB8P9CLKMBy3c+Xt+8n2LYGyU6inrtN91JLw5VAlAQTWApVGSFywEdLwAWTbnvclSJDOO5DWWMj18vgYioQTNhUCsPNNrvjj9vfTFyQHM8yurZqR84cb5TPw3pA2IskpWruw4GimNHEN+DoOF5QX8126+K+2E1YKIxsGyodR8icwc7uVJYydL2qPFDx85TIonzMJZJqAEwhICZS+2ia2A4uE+Dzg+DePMBaqfHR71uhmQVa6XIUcadeerOAymmjRiCQ3Hpix3DwB6qJl+MM1iC3B2kqY4Z5pfTu5XprATRvI= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0a8f7962-254f-4b83-3519-08da335a4017 X-MS-Exchange-CrossTenant-AuthSource: MEYP282MB3302.AUSP282.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 May 2022 14:26:34.4338 (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: SYYP282MB1567 Cc: linhuang Subject: [ovs-dev] [PATCH v2 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: linhuang 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 23ceccf3a..4a5af0182 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 @@ -4881,6 +4882,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