From patchwork Wed Jun 20 10:57:41 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petr Machata X-Patchwork-Id: 10476929 X-Patchwork-Delegate: idosch@idosch.org Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 5DCAB60383 for ; Wed, 20 Jun 2018 10:58:08 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 4E00028E0C for ; Wed, 20 Jun 2018 10:58:08 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 428B628E24; Wed, 20 Jun 2018 10:58:08 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.8 required=2.0 tests=BAD_ENC_HEADER,BAYES_00, DKIM_SIGNED, MAILING_LIST_MULTI, T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from lists.ozlabs.org (lists.ozlabs.org [203.11.71.2]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 7AB1728E0C for ; Wed, 20 Jun 2018 10:58:07 +0000 (UTC) Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 419hd95sQlzF0pl for ; Wed, 20 Jun 2018 20:58:05 +1000 (AEST) Authentication-Results: lists.ozlabs.org; dmarc=pass (p=none dis=none) header.from=mellanox.com Authentication-Results: lists.ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=Mellanox.com header.i=@Mellanox.com header.b="x2ZsayI2"; dkim-atps=neutral X-Original-To: linux-mlxsw@lists.ozlabs.org Delivered-To: linux-mlxsw@lists.ozlabs.org Authentication-Results: lists.ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=mellanox.com (client-ip=2a01:111:f400:fe1e::612; helo=eur01-he1-obe.outbound.protection.outlook.com; envelope-from=petrm@mellanox.com; receiver=) Authentication-Results: lists.ozlabs.org; dmarc=pass (p=none dis=none) header.from=mellanox.com Authentication-Results: lists.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=Mellanox.com header.i=@Mellanox.com header.b="x2ZsayI2"; dkim-atps=neutral Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01on0612.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe1e::612]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 419hcx33hQzF0l6 for ; Wed, 20 Jun 2018 20:57:53 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=gOicqiIhv/mASELLPWKV547xmH/VBmz7eU97NAN78t0=; b=x2ZsayI2oFzTdhlyYheWfzmKV3FF4V7lxs5kr11z3/owx/POYNi+4iKJhvD5iwtGKmSN3X2PZSRSstup2INU2q5936x7yiRAk8yjZlvWvLsTkvlfNKQVJBvHxOmDeungoOjEcdzskJsiSbEQmQsI3BSm68K9eIx9eG3UuBm7PjM= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=petrm@mellanox.com; Received: from t540p (78.45.160.211) by VI1PR05MB4191.eurprd05.prod.outlook.com (2603:10a6:803:4e::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.863.16; Wed, 20 Jun 2018 10:57:45 +0000 From: Petr Machata To: Subject: [PATCH net-next mlxsw v2 1/6] selftests: forwarding: Move multipath_eval() to lib.sh In-Reply-To: References: Message-Id: <4536976835f2fe3eefce2853c9b0fb8da4ab06eb.1529492104.git.petrm@mellanox.com> Date: Wed, 20 Jun 2018 12:57:41 +0200 User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 X-Originating-IP: [78.45.160.211] X-ClientProxiedBy: CWLP265CA0092.GBRP265.PROD.OUTLOOK.COM (2603:10a6:401:50::32) To VI1PR05MB4191.eurprd05.prod.outlook.com (2603:10a6:803:4e::17) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 139e4489-e097-47bb-a9a2-08d5d69ca7bf X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(711020)(48565401081)(2017052603328)(7153060)(7193020); SRVR:VI1PR05MB4191; X-Microsoft-Exchange-Diagnostics: 1; VI1PR05MB4191; 3:v0zQSR1Nrg7kAMpl0MaPumhGA+Wi/gYUGsG9BxyTvMLTxHr0SvfquADjAOnwGJ+Ef0xejkmWuDsOWLGoSoWgTR08g7/wgn8JYQqCnhd95O8qJLADwa+KWWCgB3wb2UsdGvNFW4ncxh+pBbaPUj318Ckw64bjv+cNU34qj+XfgBecxfZhv4rr1w1yloZKIwUqB1yCujrrTyEITk+u6qyasMXt2pGIH/IBNGhlL4vudZGDLP8r+L+YCr2b1hjkplWg; 25:DX8M3kty1tg0lAjKIwPotwDl6JvesAsmo6mXzcqZT9yQLDR2Oviq1AYTB0smma/4o8WHPt9zKVd0N8Gk+Xw2YOx/0m/a6leltHrV2XjY/3e/3Uc8oRvdWHULN61AhN+w/UQygzcmVibCRXIL9GwHupD1j0qqOm84Hf/0itktKSGo++1AG6puZLDL2iyCEmxOjQjZ32OGzIwtWqulpqG59JsPsZxQudG4h7oCco0HfZUrlmYZWr5Y2rUxGR6ilVda7Usdd8EfBvkjir092mbBQpMEnCOpoWLh+HDtLT7mFPIV0xw1PlnyMWyUpFM80x+Xnky9ni0Sww5+UeM+uJFCcw==; 31:whOxUrzHF+kdKjYw7o49LBeSYmwjN97MZ8r+tgwohmq2YdKARy6nOVBZs4DLjLaEx9hWlr8s3/4QD4A4XGtM4YZEzZdPmlV/QhOLgz75ppEm46vENyj0/ASL84tZ33YqhavTubHe9Z9DG6dWyda5Fxvdz+nEk78lhmhw023v2gSzx0zXomAxWjDz/M1JftqQjksgDlUhelJquoB77tH9vAO5XpAwYzSr91AwY/F09f0= X-MS-TrafficTypeDiagnostic: VI1PR05MB4191: X-Microsoft-Exchange-Diagnostics: 1; VI1PR05MB4191; 20:wjrUa83nRIxyohCjl93XmouBMGK0F89EAwk0eUr5+Zf3RnJ1E6Kl8RZhBab8bwd0m7rEUjg3tsSiOK03W8U1955yqR6R0+fkEjrHFrtOe0VBEdT0Dzq7mbdqlXLxI3iCo6hs/XaXUp6l1qtt+OmF1QLQtEkeUUTIeuCsvHuSHQx3zrex+pRLp15Z5hHLMr4t6Kzxuo29uYvSYrMgFJ73P7gHsOpKK0wzJmJ5tY9KgDUQz9hvVv5N1KzUohgKx7fLMLYgxK8PpMqiwskq5MV+AXEeg4MaARoMne4cT3BkM3vpcwjO7e++PbuT2ErUdMeTvhI2UO0bbbKOWxzAwMuhn1fXWuml1GZP12VXj8heB43GLTMPL97GzkOQ7dRw4V/PehdxWqiL2kVjzLVZm9gx+TeDrPMADC3rmVHK9qRqpxXzdoMYAHFqmWnm5r1IJaly4yqRW0Ak0lhS00mVtf6+nGLKj6zExBx3L0kzEV09rOV/FGg7TCZS4h4018QEmPjx; 4:Nns6qTn2f5bkl6txZr5Iswu6D7JfPHfTU9ik59slRTK6a36Ufay+D5j0eHyJsnTkIzGASAH9Tm6oD/h1HF52piLCss88SfFmXvAwfHDjQY0xjhf1GOgs8mFcYvWoymFw8hmLzm1qA5oOZAPJYnYYMfkMeeLvoVd8bhJlMdxk91ku3D6ONU5ytRFdHxA/OLRHuo9HFnMrWFdt8xgPr9lKnTu78DyEuiccdCfNaZSXN/w57Jgo8staFi4Kwt/nYo0atL4ArDVfdmwln54XEdfjUg== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3231254)(944501410)(52105095)(3002001)(93006095)(93001095)(10201501046)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123560045)(20161123558120)(20161123564045)(6072148)(201708071742011)(7699016); SRVR:VI1PR05MB4191; BCL:0; PCL:0; RULEID:; SRVR:VI1PR05MB4191; X-Forefront-PRVS: 070912876F X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(396003)(39380400002)(39860400002)(366004)(346002)(376002)(189003)(199004)(97736004)(81166006)(8676002)(81156014)(2906002)(53936002)(6862004)(25786009)(36756003)(8936002)(478600001)(106356001)(118296001)(6486002)(48376002)(50466002)(5660300001)(58126008)(316002)(68736007)(6636002)(6666003)(16586007)(6116002)(3846002)(47776003)(66066001)(11346002)(6496006)(2616005)(76176011)(386003)(305945005)(486006)(956004)(37006003)(446003)(476003)(186003)(16526019)(7736002)(575784001)(52116002)(26005)(51416003)(86362001)(2351001)(105586002); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR05MB4191; H:t540p; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR05MB4191; 23:Dz42HBPf/APhlsZ0+7aNaRQHZdeKlvQNIls4a15HD?= =?us-ascii?Q?ZHTnLddLeGWpPG21mECfUiHmJTY2P7oBdKuFFYspa4DS7PvamUPB2zQyUJOn?= =?us-ascii?Q?eXagTKa6RrHQ6QAnjKzS0i6CdlExF05RMVXS368cd/JjfBBLhQFrF7VKRL4L?= =?us-ascii?Q?opmZ88JrwKnfQDGQX9KIERbiZ7IRfrnJszWO0mzKE2D342KDoeBF4Wsvru/5?= =?us-ascii?Q?VLA0AeawmbFKBFfZU7fxQj/9zsnqH8TEFQpUJxQrV0Vpx/y+s5ZDVg5WQ+PZ?= =?us-ascii?Q?smApqeSDoZRpFD1/61cHvjd6l+fmu8sVXsgQw8+gCoC6wCSds8/QXJq+u70c?= =?us-ascii?Q?TnMHnx3dR/Jrc+p79vgQpSQk2AS/o4W01x/SHM9JjkFHu36RU9L6HSPHtEQB?= =?us-ascii?Q?vKQXf+LW2r6uHkx+YnruyZ/cugd5peezUux9S81pj8b1h1q8OTrBw6HrsTK/?= =?us-ascii?Q?RYICoP3yk4dVjK41ZtGmdF5LwlW7QLXI0AzdX5AVqnOKs/YMLxK9q4xKDJAy?= =?us-ascii?Q?N/4+0VAFAx91YXPL5cSmlN/blhGU0r3syEax4MeJEUXB810lj5GA3UavmTXN?= =?us-ascii?Q?as9GCmS1mppPLHYU3t4BiY2MHEPCqLqdmRj2RaySiol/BDx7B8ZMMvRCum9l?= =?us-ascii?Q?d0moibdw+jY8ZvVwRs2jtqPvUAxkq6b+e5VwURsDdFWTJ6u2pAZ4apGLU2nx?= =?us-ascii?Q?PDaEW2UQMo8zxrqbDwcHIWAwWrML9vbdBnvMM+rzUVuYB6KKsJlnvTtK6hOs?= =?us-ascii?Q?uXzqP8XtxAdE/E+6Vde4poP5LX1HyxO0ezsrwc0NyuE3Oq670HQjnljnJIXF?= =?us-ascii?Q?Jdq/vEVHCG/6gXLa8dEOxMdwA7OrQyDOl+QqXQswDcTDUcWQXk4HA8zwJiW7?= =?us-ascii?Q?ZlpLNNYe0JfwQRX0ZOj2JJKvtkKgLzMF1tpPifiAYfDNLAm8Z1k7f6+nm205?= =?us-ascii?Q?DqOxAR7O/v4/ThGc60KfxaSswqeEKySZKjm9gWKLKd0WRrGaJUzp9Jt0YO1T?= =?us-ascii?Q?TdSiCJRDgMWhz16pHj23nHwqgmR6acwBDuhuopmcyW648NQPd0h411oXmj2N?= =?us-ascii?Q?qiQJPOwPSiu0tc4fGvhzbJdfN0uEV0qKGuezDkAI9FA1x4A7j/T25moqqISp?= =?us-ascii?Q?Hgr8E+SZNt8sgMLpuTpT1EhA8BwTxXrhVTcE3D1DqmcAD5rdVsZnFtWaqiS4?= =?us-ascii?Q?tAtUO1NEJkbvfLcIMxUXTTaeDPKUmfEfEfSNLOlKfA7whP+xYVOoL3LuD7QX?= =?us-ascii?Q?q/qboW73+nCWKrCtBU=3D?= X-Microsoft-Antispam-Message-Info: iQ5lTG/li0QzXFWUbsBbREZ7GoX0tBodZcNysQ34lh8UwyPGphzLrQX4/6NLy454XUF/tx1KHtZnmrg57WXyJMGbzXpj1FLusjJtUBBOWIZfBYHAR8OlvLhbEAcNKVBy4Oq4tY0bOJ/IkB6G+c6pxksKAw5Bv8XgJz72cjSQuQwPCCLuCrzUKu3i0mjsG2sKi/go68GkGl8wwcnJkRSgND7V7Esb4VL3W1AGFNNOQTLTreo3Om2I0+103B5YSirgfkIQVP5+L4YNzOcAnIHsy+hIDItO10ImJUL3tjZI2qVEjz6CQKzZg8rVdlawssoMZJwEk35P3xbr7heR1CTHCw== X-Microsoft-Exchange-Diagnostics: 1; VI1PR05MB4191; 6:IM4nIrUtu6HcPYo9zZxPYByWm56v5x77unNFG+RXnMMplYYrKDIONzTi6V4cM20IXFdFtQfHoIxcdCJ7p6MDS9SpOpwd50lD2MtvpzlVh7eN39wolM1PfSbRhzT9hU7OhBhaUTJ6K9GYAxRQKOywi1SRRYqi7og3IZVJTpGx6wLcV1JYWGywY09plsMfoN5EMrtzbKPgZGQWKcec/qTMJevAMTBuXLu/ErA70qiyOK7IvYyfqvqNqU410z/agrGVQb+nUyrkCmSyEulDKySXfjmIYd3Aq2YZVdFEMbaNxasVnyIZ4d3JXs4/yJDDGEIOqfE7c201mcZfD0I4fBa+ltiK0Z+sq+MmbsbP+vwwDiY16wpVeQy8ZeMQFYiiV3Qf7NkVVnOKNUz9F9Jsq+DE8Rye34scUmVEYW6CUNEEdjfWbRx1q4ypVX+1UuNw2lX4gz0F3j7hbZXrMY2IazbY7w==; 5:disr629Z/C78Joon5QpmNL2pSEiHIUppiNXkIIBUackqycuSGmHC9bK0JvhV0ktrRtNtRTCii5PfV3ner/yMzMPUjdnINHrqFDVf1kvSxPGQ7nIn8I4vqsGiA7ed1v9DfwXDKVIoIhlGcd2PpFTt2YQ1XYLkkrbmh4oYFqAa1t8=; 24:QnLtp2e+EKn9KiJddj4os9CChLLwNZOT3PUpczVnSDU6yqjt0paPeopX4w1fNlcOAqA7e25mR3QxHunAUPKFRZmT7VCNUV7ct7P4YbPU4F8= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR05MB4191; 7:LTCWzG0G58W1LLUkw4vUr9YKHAzgtm4H8SXZxOzUv5sgcmkYvNrH3yZA0RfXhLYZxbATRrqvSiuXDuGcDgrCtCL2ZbYIZKHXUuukylJwGW6RA7ff2PDWJlDrcbvilQrw4dPxmQ9BrFZIr3v8ORsqyqMiz+wtcYfdOPZcx2eWQWff9w+WNrUaijKobgbCqJble73y6LOkLmmXegAChH0fmLdos2b6rgX22vKwHu4C9f+Bzwitg/+tdRxOf4wLP/0a X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2018 10:57:45.7449 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 139e4489-e097-47bb-a9a2-08d5d69ca7bf X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR05MB4191 X-BeenThere: linux-mlxsw@lists.ozlabs.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: mlxsw driver development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: linux-mlxsw-bounces+patchwork-linux-mlxsw=patchwork.kernel.org@lists.ozlabs.org X-Virus-Scanned: ClamAV using ClamSMTP This function will be useful for the GRE multipath test that is coming later. Signed-off-by: Petr Machata --- tools/testing/selftests/net/forwarding/lib.sh | 39 ++++++++++++++++++++++ .../selftests/net/forwarding/router_multipath.sh | 39 ---------------------- 2 files changed, 39 insertions(+), 39 deletions(-) diff --git a/tools/testing/selftests/net/forwarding/lib.sh b/tools/testing/selftests/net/forwarding/lib.sh index c57b6050d0b7..95eb16f1b346 100644 --- a/tools/testing/selftests/net/forwarding/lib.sh +++ b/tools/testing/selftests/net/forwarding/lib.sh @@ -615,6 +615,45 @@ tests_run() done } +multipath_eval() +{ + local desc="$1" + local weight_rp12=$2 + local weight_rp13=$3 + local packets_rp12=$4 + local packets_rp13=$5 + local weights_ratio packets_ratio diff + + RET=0 + + if [[ "$packets_rp12" -eq "0" || "$packets_rp13" -eq "0" ]]; then + check_err 1 "Packet difference is 0" + log_test "Multipath" + log_info "Expected ratio $weights_ratio" + return + fi + + if [[ "$weight_rp12" -gt "$weight_rp13" ]]; then + weights_ratio=$(echo "scale=2; $weight_rp12 / $weight_rp13" \ + | bc -l) + packets_ratio=$(echo "scale=2; $packets_rp12 / $packets_rp13" \ + | bc -l) + else + weights_ratio=$(echo "scale=2; $weight_rp13 / $weight_rp12" | \ + bc -l) + packets_ratio=$(echo "scale=2; $packets_rp13 / $packets_rp12" | \ + bc -l) + fi + + diff=$(echo $weights_ratio - $packets_ratio | bc -l) + diff=${diff#-} + + test "$(echo "$diff / $weights_ratio > 0.15" | bc -l)" -eq 0 + check_err $? "Too large discrepancy between expected and measured ratios" + log_test "$desc" + log_info "Expected ratio $weights_ratio Measured ratio $packets_ratio" +} + ############################################################################## # Tests diff --git a/tools/testing/selftests/net/forwarding/router_multipath.sh b/tools/testing/selftests/net/forwarding/router_multipath.sh index 8b6d0fb6d604..79a209927962 100755 --- a/tools/testing/selftests/net/forwarding/router_multipath.sh +++ b/tools/testing/selftests/net/forwarding/router_multipath.sh @@ -159,45 +159,6 @@ router2_destroy() vrf_destroy "vrf-r2" } -multipath_eval() -{ - local desc="$1" - local weight_rp12=$2 - local weight_rp13=$3 - local packets_rp12=$4 - local packets_rp13=$5 - local weights_ratio packets_ratio diff - - RET=0 - - if [[ "$packets_rp12" -eq "0" || "$packets_rp13" -eq "0" ]]; then - check_err 1 "Packet difference is 0" - log_test "Multipath" - log_info "Expected ratio $weights_ratio" - return - fi - - if [[ "$weight_rp12" -gt "$weight_rp13" ]]; then - weights_ratio=$(echo "scale=2; $weight_rp12 / $weight_rp13" \ - | bc -l) - packets_ratio=$(echo "scale=2; $packets_rp12 / $packets_rp13" \ - | bc -l) - else - weights_ratio=$(echo "scale=2; $weight_rp13 / $weight_rp12" | \ - bc -l) - packets_ratio=$(echo "scale=2; $packets_rp13 / $packets_rp12" | \ - bc -l) - fi - - diff=$(echo $weights_ratio - $packets_ratio | bc -l) - diff=${diff#-} - - test "$(echo "$diff / $weights_ratio > 0.15" | bc -l)" -eq 0 - check_err $? "Too large discrepancy between expected and measured ratios" - log_test "$desc" - log_info "Expected ratio $weights_ratio Measured ratio $packets_ratio" -} - multipath4_test() { local desc="$1"