Message ID | 20180109144028.30133-3-idosch@mellanox.com |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show
Return-Path: <netdev-owner@vger.kernel.org> X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=<UNKNOWN>) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=Mellanox.com header.i=@Mellanox.com header.b="RiTmYVpd"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3zGFGP4j7bz9s7g for <patchwork-incoming@ozlabs.org>; Wed, 10 Jan 2018 01:42:05 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756698AbeAIOmD (ORCPT <rfc822;patchwork-incoming@ozlabs.org>); Tue, 9 Jan 2018 09:42:03 -0500 Received: from mail-ve1eur01on0063.outbound.protection.outlook.com ([104.47.1.63]:36512 "EHLO EUR01-VE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1754895AbeAIOmA (ORCPT <rfc822;netdev@vger.kernel.org>); Tue, 9 Jan 2018 09:42:00 -0500 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; bh=k6ma6erT+IYDSa96BT86Q9C9zdQDtB0B/XAbt9qVhDE=; b=RiTmYVpdxGcIhWLzpH0uE4i2i3hFyVp1b5/oSvDqC3Mwr7YGv+5r3nbq48z+A4E5M2mGmciQNojOxSxZDYeUz3Wc0PUQmUx+9u6Vi49M9iAAZkN1kdzOMulsSYKVsZcppeSIii5K/ZJ27qrNggULktmxcpH08TPGc/U76c8tO5w= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=idosch@mellanox.com; Received: from splinter.mtl.com (193.47.165.251) by AM5PR0501MB2003.eurprd05.prod.outlook.com (2603:10a6:203:1a::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.386.5; Tue, 9 Jan 2018 14:41:52 +0000 From: Ido Schimmel <idosch@mellanox.com> To: netdev@vger.kernel.org Cc: davem@davemloft.net, dsahern@gmail.com, roopa@cumulusnetworks.com, nikolay@cumulusnetworks.com, pch@ordbogen.com, jkbs@redhat.com, yoshfuji@linux-ipv6.org, mlxsw@mellanox.com, Ido Schimmel <idosch@mellanox.com> Subject: [PATCH net-next 2/4] ipv6: Use a 31-bit multipath hash Date: Tue, 9 Jan 2018 16:40:26 +0200 Message-Id: <20180109144028.30133-3-idosch@mellanox.com> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180109144028.30133-1-idosch@mellanox.com> References: <20180109144028.30133-1-idosch@mellanox.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [193.47.165.251] X-ClientProxiedBy: HE1PR06CA0128.eurprd06.prod.outlook.com (2603:10a6:7:16::15) To AM5PR0501MB2003.eurprd05.prod.outlook.com (2603:10a6:203:1a::13) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 5ea09175-813a-4c86-2795-08d5576f20e5 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(48565401081)(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(5600026)(4604075)(2017052603307)(7153060)(7193020); SRVR:AM5PR0501MB2003; X-Microsoft-Exchange-Diagnostics: 1; AM5PR0501MB2003; 3:03MlkUrRTO9nxbBCOboWM5SBLG4Ck73wF7WT/9xVDmEEX5JmIaWmTwDi6H9kR17GR0NpBt/ZO+r7IAipmBypNZXgun4kcdUW9ayJAB1aaUJnLXZJLouFSn37RnprbrFDW+7zFLeRMrpFQ532t4rs5y2vU17UMjIQQhtYXNuwD9V3B3+St7wzlrT6rn5I2nXibLAdq3vy8LbUHEA0Ywp27HIbhSWaVfd39w2gSZckKAKIvOYI3Y1KE3hR7T6w8MQc; 25:TweRZk53kptVV2RSY9GIMDjXaBdu912cOyT7FJ0ug1yJz4Ckm6kt4nCZ49+G5CQmbR3/JvOe7ntu4wmERaNkSjxT5pCAzFeWpz7jqUw71dH+2KVdv8+U1DvkR2oRAtitEqbIa2am8RZRiTQwOz+obOUDMSlxQtLqiu+8AMQPJHZnrZ6ZN5hTwI+YPSEGFdKknbs9ON2d6NwV1UhzUJLgbMhF2KElBfu7aM0ak02v5VTDwciPiQ1AMjv48KwSZZBvYwXsd6Y2C7CtJVTfleWNNg8H0bkz5rH9BlzTW6UVh5+GxX8dqnLk7Bezj9kd840uVvBgy7atkPnaXEdL/bLbjQ==; 31:W/bLMSVamCGb3U+BYbMhu+mPAguzpkc5Pcmj/6j8x6zwTP0XJiiFpbfA1D3R5KSYrhCps3Rn7rtbJvrIcZ1l3NIf3DDelgK6Zy7fJztPbl+EPtWrkXs53FI2YDDsmkR48RvxEITdVpE9LTTaVLIVxoGbT9BaFdT3eUTXYoPxuaWwGmGO1Hu0vmcbQZ5IKnXOPpPsWE8Bx6n+Y70BPvZRKFjbG3nUwfpmoCq78T0E+ns= X-MS-TrafficTypeDiagnostic: AM5PR0501MB2003: X-Microsoft-Exchange-Diagnostics: 1; AM5PR0501MB2003; 20:ZKi5iNuijaU8BADwEaYrgd/RZ2w+mgnUa1gsdaFz5S6XxXFH7qErRUFMAUOP73em+l/vzAggHUUvmCdUmv/7WjUKgH4V63hl2OA2tD71gQ7nW8jYBDD/ZcxzSFbe1z4QEU1bDn9D5uPVSSYitW7wL4a0NIFuKhLWdnSnFqo4Br5y8jDAs4y/TzGVAHuxo9wqOwhevr3fJVhQxAL77T6f5Kujd1z/aw5d4fIMAgSudnU6EeOGu8yUNhtJbh+HPtBkQxMajtvmJuepPtVKgQQIGwx8LyZmQ5nTjPxHbt9zdI8EiBdfIouf318l2UlV9KA39hqDAjTTD1WLJqy+7jOyxOGJ9jTqTB1KrP+vNTfMAjtaMlP2j0q5mSKSAJ1FCxuWS2FWMPGwrLM5jQ0oxuTJgpxq45AzfP2y1PFfaa3M3VOIL4GXtl5FzETqQ3F4CsDcar06hltNU/8I3HZkOyFslwgcGXO6FZXVt8NVAfweT87sF4INXBxexg7no9ge3Hji; 4:wkPRORkLRJdfjwzvSrshhFjC4nQ+KlMgVxy1NkjDf95YuYGy30BeVBc6H6lGyssZq6aSXmByiRdAWCByIG6pH/XfsDB40Etr0Rd+2kJNgTlUBp6MjO4aujT7WoOmrM4qL845/vDBW8K6QFVsURYR2BOdbJ+en4uIlR1o/fR2s1BZcqITl/6cFG3DMC/2XMJQ+4+v74OtFGUw24GS7hrNE5WJgJAtf+lWnslkzSTGOkWxWf2BQsxKMWmwCeKYcgb57dXg/SHA0Ps7j+4k3KR+Kg== X-Microsoft-Antispam-PRVS: <AM5PR0501MB20037C430F117F98E7F5B3AEBF100@AM5PR0501MB2003.eurprd05.prod.outlook.com> X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040470)(2401047)(8121501046)(5005006)(10201501046)(3231023)(944501075)(93006095)(93001095)(3002001)(6055026)(6041268)(20161123558120)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(6072148)(201708071742011); SRVR:AM5PR0501MB2003; BCL:0; PCL:0; RULEID:(100000803101)(100110400095); SRVR:AM5PR0501MB2003; X-Forefront-PRVS: 0547116B72 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(39380400002)(366004)(346002)(39860400002)(376002)(396003)(189003)(199004)(68736007)(51416003)(66066001)(5660300001)(53936002)(2351001)(6506007)(386003)(50466002)(8936002)(47776003)(4326008)(50226002)(48376002)(76176011)(6486002)(97736004)(81166006)(2906002)(39060400002)(52116002)(86362001)(3846002)(81156014)(1076002)(8676002)(6116002)(53416004)(6916009)(305945005)(105586002)(106356001)(7736002)(6512007)(16586007)(16526018)(2950100002)(107886003)(36756003)(6666003)(2361001)(478600001)(25786009)(316002); DIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR0501MB2003; H:splinter.mtl.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: 1; AM5PR0501MB2003; 23:bRUHnqf/Ytpk62fC7nj8AkU8gLeRJE4bJ1Wig9jRT4y4LCu+lVvs/vRCGTk9DK/pY8iCzJ/EJUcBM47VVC/hrbmFSo6+j4XHnnQZDA1Z2BUT+WH7pdJ7rlsqFCCCABN7M83/E3wx73sLTNk+D6mV1qwL0mVK6EXXZ+oUpSQxyvMK8vVEKjIbtfvvqSHfmGPDHCnalYZhyshRqnw3AWw7JZ3S/2AlQwxUiVPTZaerMQ2YcJAWySZlB2lO+szM9Z/XRU6NTun/yhFCp+Lk8uRUslZojolO/ue7Ca3LkWru9fXaiiDond1REfG8/Xl0RXyZrv85Ujvtu9atqT4ghs43a25KaKgkDxzWVTN1/3A8viCxYEgB5MlfwAkzhTaf0PRBcYMlMclaLlEzob/sm3aLKA58FW46l2QLeTn7jm6SourxbNg8ikJ9+Qom8mrus48C78/wR2Z1onsVAiWXKs/ypc3XazxoXZ6sHd+dQ/ZqWdmfIMTWTL388UE/nL/7nHMwnd98TQFsrOklhAApgarH6oQtKrkJL/WT1OxkDmTbGEBaLZupX5/6I9N6f7oDeeXZ0EdSQplW5p4w7lrLJCfpmjTMXd9YsapKUwjsPhwsgi040C8yAk8A4EwoXh4Qoa9GlgPiCFTGqMPl75foQOg9IkbbOKJM7LqciKm0CS2bFy0RDoqr4gHsYgBY6+bQEYBdPnoLqyaPcdNpJuUv/M3aqOLvyIcpxnzbz/9nknhxSpM8pqpkyOtzjLGxBUWLRHFlbKA2I2sn5m41d3MQo2sBUaQCWi1ckRwehDx6mMgc0+ymqa4f+ACmn5nv8R0IWuHpSW/oZMICaGR5ClnKs/ko+kK+BqGaZJ/xlIW8YO/nhG1gYeUjlveA6dXSaJlxD7MAiqJmqR8UCzGkr4K21wAt3nS1kWfPK6NZI7uOJw9/IBt530uomDQ0eUdmdFhmYXg6C8plCanyktARXLWqU/CWjsOpd08iMi/gQ4CUKmOxPjPQ+HRxSKJ9PRYTd1SBIDu0trYmWtagjl7mAZX7Mxeo4pWOg9kEIWyXRch4BHbftB31iBVS7bLt71xMCvYdsumRgOG0pZCo+RtrpPYqfwcVIkbKk+d+uRR97sqpbiyrvUT2zJqbZltVYJ5n7uLRdo9oLjtyEzQChrJk+aTxOTo0FXWODhSnVC8SbeOGzAnkddJoynQI4348PG7MaXg0RHp1 X-Microsoft-Exchange-Diagnostics: 1; AM5PR0501MB2003; 6:QFnqabbt2LZyZrlalK43ySouCxkdMErWXbhyaov2aoL8aTVf3DkYU2krSOOi97xxZRRPfcZroYINYhk9OyM6zGpzABT6pBI8/8z5eUwrBnxNZqMb7ctfGJoF1nG3uixvm5t+iHvG5p2dFZsOCRNJ+UBMLCoZsXg+7sOhTi011Qt/jOwL0RiTKzzlfIxO2Tbz4/g6Cuu7v0vMLNPwvchrKyPl4jEEWhWeEC7xA+KzxKeafX0s8WBqP9da6sOx6wQSd/ZpCUVLC9Y54KP2Xy3Lx1wODuXIx7BYD4j8vlIY4PJOSeu++sODMcQVpvvCukluyRcGg+RHNUaGf+NLh/q/yCYcnzp2z/ZPS0bIhkrm+3M=; 5:afewbeca/pumLMT/F5U5ZCm2lWGD5VFOzA6uuHojMoJgUaUuLULgskyIyvWXnEQH0b/l2OfGyPLDNofo+Ny59+NfQgTh0lrUTxmMZVoEQg2IPPkOh3tESjwFfCy2PBYh38MLRVffIfH7b3hufIwFcX/HYDXKE+P74cnhbmk5Aa8=; 24:lY9/G4XwxPKXgnD0792v/PPmcBPdHu9MQHGpqNmRFOq9QrI4Li6msy0qzsBSPW3LiuhB6bcj0rrjqWlfKIE1peRDv2Ax5BWNnjbrcWI2dcY=; 7:hzsgIEE5aAvDB6ryuGNH+NG/soXDBiLzCqcDC0jP+hHXBzAumOvS4exbIpXXXV3W4DSWylb+RDIYvp8B7CytKJ2kFTGFv6D/onvCyO8EbJ39l/5ZYFj3Zk4eVNiynYtjsgGCr6+U+pzNCQN9ZRxVyC9vH4w0VcKgE3P/CyR5G3oQrEHReq3E82Venzu6PQq/hhmISHHnMYbhP8BFvm67YbAg26d+a2jLj8JpSLtYPEKcZn0qRHFnVaecNB5d8Kpu SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2018 14:41:52.1729 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5ea09175-813a-4c86-2795-08d5576f20e5 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0501MB2003 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: <netdev.vger.kernel.org> X-Mailing-List: netdev@vger.kernel.org |
Series | ipv6: Add support for non-equal-cost multipath | expand |
On 1/9/18 7:40 AM, Ido Schimmel wrote: > The hash thresholds assigned to IPv6 nexthops are in the range of > [-1, 2^31 - 1], where a negative value is assigned to nexthops that > should not be considered during multipath selection. > > Therefore, in a similar fashion to IPv4, we need to use the upper > 31-bits of the multipath hash for multipath selection. > > Signed-off-by: Ido Schimmel <idosch@mellanox.com> > --- > net/ipv6/route.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > Acked-by: David Ahern <dsahern@gmail.com>
diff --git a/net/ipv6/route.c b/net/ipv6/route.c index ced2c9bed10b..09e8e10b101d 100644 --- a/net/ipv6/route.c +++ b/net/ipv6/route.c @@ -1833,10 +1833,10 @@ u32 rt6_multipath_hash(const struct flowi6 *fl6, const struct sk_buff *skb) if (skb) { ip6_multipath_l3_keys(skb, &hash_keys); - return flow_hash_from_keys(&hash_keys); + return flow_hash_from_keys(&hash_keys) >> 1; } - return get_hash_from_flowi6(fl6); + return get_hash_from_flowi6(fl6) >> 1; } void ip6_route_input(struct sk_buff *skb)
The hash thresholds assigned to IPv6 nexthops are in the range of [-1, 2^31 - 1], where a negative value is assigned to nexthops that should not be considered during multipath selection. Therefore, in a similar fashion to IPv4, we need to use the upper 31-bits of the multipath hash for multipath selection. Signed-off-by: Ido Schimmel <idosch@mellanox.com> --- net/ipv6/route.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)