Message ID | 20180107104518.31693-8-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="Z7eJ9kWZ"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3zDw984C9lz9ryr for <patchwork-incoming@ozlabs.org>; Sun, 7 Jan 2018 21:47:56 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753744AbeAGKrz (ORCPT <rfc822;patchwork-incoming@ozlabs.org>); Sun, 7 Jan 2018 05:47:55 -0500 Received: from mail-eopbgr00048.outbound.protection.outlook.com ([40.107.0.48]:42941 "EHLO EUR02-AM5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753177AbeAGKq6 (ORCPT <rfc822;netdev@vger.kernel.org>); Sun, 7 Jan 2018 05:46:58 -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=nvJa4txuzrdNqKVOXQ6m15ggeC8VG2ZQ3THBNhhhlAY=; b=Z7eJ9kWZO2/U+W7GGGBqBPAedXBT28oQGuTHW6ll474M6cjcDC2lXZ6AHK521LpFNCZFNQzpEJkc5Ijyjmp5+KPvEvKVTKOm8jmSdhsaKTJzM34BuynYbkQYKcfBk+ai73PiT8RCfNN+VmpugqaEtkNt+PsPjtWXWRBLc1FC0BU= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=idosch@mellanox.com; Received: from splinter.mtl.com (79.177.48.236) by HE1PR0501MB2012.eurprd05.prod.outlook.com (2603:10a6:3:35::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.386.5; Sun, 7 Jan 2018 10:46:49 +0000 From: Ido Schimmel <idosch@mellanox.com> To: netdev@vger.kernel.org Cc: davem@davemloft.net, dsahern@gmail.com, roopa@cumulusnetworks.com, nicolas.dichtel@6wind.com, weiwan@google.com, kafai@fb.com, yoshfuji@linux-ipv6.org, mlxsw@mellanox.com, Ido Schimmel <idosch@mellanox.com> Subject: [PATCH net-next 07/18] ipv6: Check nexthop flags during route lookup instead of carrier Date: Sun, 7 Jan 2018 12:45:07 +0200 Message-Id: <20180107104518.31693-8-idosch@mellanox.com> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180107104518.31693-1-idosch@mellanox.com> References: <20180107104518.31693-1-idosch@mellanox.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [79.177.48.236] X-ClientProxiedBy: VI1PR0701CA0039.eurprd07.prod.outlook.com (2603:10a6:800:90::25) To HE1PR0501MB2012.eurprd05.prod.outlook.com (2603:10a6:3:35::14) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 6cb5bce2-6f57-49eb-45fa-08d555bbf5aa X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(48565401081)(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(5600026)(4604075)(2017052603307)(7153060)(7193020); SRVR:HE1PR0501MB2012; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0501MB2012; 3:QX6N95UNw/ZsD3gH0zrI0mhkbhmNSvpkjIc6twzesjLuZ1VXllUXLcrR8JJAOpJiQnwQvLYWPwNgX/6HIVq7wAopMzIiZkACm2TXqhzpUAYpA2vCUA66QAQ4sL23Y60FKHGEnfWRQhuBh6mc7jppzcfSpJlF5aBq7xjkmU3InUHzBFkpzihIKQbuIz8XpBZ+nXvnDKG7r4kpxIYha5HREzx/PcqPqyUUd8Ea1YoYJkkfzoIwqtX17xF2u580GDIo; 25:LntqFmbHq3iTDIT/qI0HsoTWospFhDbywi9TJp4WtRBNIqZlZeaZgleWAO2mKIv9cD8q6386ho2VhomWLPDEfx0X1zZ2lIv06b9G3PQnYFXGeln8Qy8750lXYaZNa8X8SAp6+bNwhPi9LBkDwMKbT+N3kjOmMU6HosagTsiKKuae+ozrI8yU0vgLL23EE+bM2FMdho7RLQAH6TYtuI2XOiZJ1ojqQL/3/vxJDC6CDwGcVYZcU3buxL4m02kf7+afXnRXECVkEaNMWZ8EfXopWtv/JCt6e5ZhlgThtLR+K5c9Q3oszTukqdcTh1TD6zQ7+mc8Qo950Y4Vr7OCaEjFEw==; 31:mQ+LHfLxG3gRU7rm6uXrc1BSmeG2l74G44tfBB0N8c2kl3a26W3krNmYWU0zlmASKPfQ+rP6V99Ldf+/q6wQqQiKNqQr1Yn7Wo5u3OPTwbNG9M9oniYcUbTGA0BO8uKpZP8RQf6CRy4sy0dUmAZBW9HE5lsAwqFKdKMqVfLLnyf10JMdX0ZQjHxiPn1ERAds5kmhftO28dw5TvshLyUBmrAkYQa4UqekTF6JqZhff8Y= X-MS-TrafficTypeDiagnostic: HE1PR0501MB2012: X-Microsoft-Exchange-Diagnostics: 1; HE1PR0501MB2012; 20:0wrioDApyDX9UFE02zP8r4hcoRTVeLpgd2Jk5+1pSHMJv0vFCM3qT+VcvAvfEWhaax8+IjtLc7UKNWdn8gIhsEW7FOB+i3D6YvVBcmqPlwwwh/29YuPSUoQyODeIfK8UF8z1/XgRqqikFwSSBPpBEbthNLBoSxP47vk2t7Ub+H68srKVZwfvp0BRfFfUE5yrFEJjzxg4LBlxJ401HyLK8XW4iY/u8H/MbXNf3P2A4l/pCg9SkgJjPI/8YKONlAI7HyGpojp/q1icfXT3Uz3KwzMyM+UVFS2CsYVudOUQfAPmFbsJfkriTq+B233l6AaDR5P3Ut3svXT0DaIXjn8jhG+fVBEqV0usBxnZHthXL3KJKjgdpSCZ+V5idhCZKRImgRd5W6lMK3nyAVj44w/8ZyY2p1Z3FMsLOjW7Pm0Cku2z1o+xn2+Tu7fmzT/XCBxep404Iy3EI27JipDbu044XG1o1W3fTyM8wsoudO4S+itUcZ7OlHtz2yKqO3dqfyuM; 4:EgCPsJJTWe7//xCqZikk7S+Fr90zXBY9FEvFfdflgcUR2gNg4Zta3iszrNQOdTGxxTyFQAnnXeUEdHrxuyquKwycO7tXeHj/jbUGOlXv279IY8WV6JQsSobfovWJefvvp1NwUtkPVvzCDP+C0lPdRlQd8MIWKU/tJoGV40X4E+XEQPWoPa14fqiM+NCdowUMIGya1FVZuJgLoh4T8lrm6ZXtYC6wVAG6tpd8/IHg+A92gIsxzgm8P/6MjpxwXs0G2DvFq2uwWpcRZA+HGlZt+Q== X-Microsoft-Antispam-PRVS: <HE1PR0501MB201251B8D3357162EFBF3ADBBF120@HE1PR0501MB2012.eurprd05.prod.outlook.com> X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040470)(2401047)(5005006)(8121501046)(93006095)(93001095)(10201501046)(3002001)(3231023)(944501075)(6055026)(6041268)(20161123564045)(20161123558120)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(6072148)(201708071742011); SRVR:HE1PR0501MB2012; BCL:0; PCL:0; RULEID:(100000803101)(100110400095); SRVR:HE1PR0501MB2012; X-Forefront-PRVS: 0545EFAC9A X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(396003)(346002)(366004)(39380400002)(376002)(39860400002)(189003)(199004)(107886003)(106356001)(76176011)(51416003)(50466002)(86362001)(16586007)(4326008)(575784001)(8936002)(68736007)(105586002)(81166006)(1076002)(81156014)(2361001)(47776003)(6486002)(6506007)(50226002)(386003)(6512007)(66066001)(16526018)(8676002)(2351001)(5660300001)(53936002)(7736002)(36756003)(2950100002)(6916009)(305945005)(97736004)(478600001)(6666003)(2906002)(6116002)(52116002)(48376002)(25786009)(3846002)(316002)(53416004); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0501MB2012; 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; HE1PR0501MB2012; 23:ZljpIyDy3LDjb1YYDC5S7Y4L+6Bg8iAWi3S1vEagY+pki/aKd5QEBnlz9myImvlsnUGGfz7Wh0mrYc6eh9XwMdj7z1qVYbO669nAf1tlzC23cHWb5HV0Y7kbbgeOCr/RvC3kW8leCCTHxbxGvXx5NbsSu//etMn/1aES07CFI7pv50s3MnvVDNISNUczAzPJaJtZaPdYpRPjtaZoxaUEuNIRNzGC+J6TSky9vh2UU1GEKd9UYwM3A94c6J2mbPYYa6uWlDL82V0yBAsKqInuZLk7tTu7D6rKgtLBmF8YN4rAXNUbwXaC3qlEeNtCgfs9vlBo+5sxymPe/uK1FbPhX6XV4ge7mdYeO0/4WevKyRG5/ed2egJbMkZq4T27Ng2kk1YlBGNtpGRvMOG8W5NeFcYQuZdHrgQNNNYs00ktFRbKHg/wRJeHfa7m++mw4T0IasjuRJZjMBotKfOv92oRmTh/p08sgddClQ8IgOJYBjVFJumbeBosb0uTMV24dUXnGVP7UFZtg4tmTGo+wAAGaMewDcxGKz+LAKGjhXM2HokW+2Yslos+MYHQr9GkzKM7Ab9rO1xkdl+wsX20AG2THUepxv8FiFyF4lsdGmjDxs3KUgvgJ9tvSNvYMRIqI5ucAonsc8K/jcz4JCN4j46U+rX92Kosg+2bBDGzR2xHzKhBMUvTk/Nmj6/dDUyUBZC+2z4k6oJv3XUQVpbDlu7nZk+YkPOhWf+GXWdzJAOSnzXjWJmrwBGuNKXY+gx+HOlf1rUwOdmd9tOgezimxLEAKU9TG3LNuJVC+CAvBI2sxYgrqolM0YL4hnx/5Rlc27FLXj8Jxo9TpDsgzz7oOU8L4oemPzjP177Fb/Ef31SXV5DjYUVqTbYVi1jiNQOKr054abJv+Eiy+lTN6ZhqcDHT+QUOqcDen1BeecECUyXcwi9a5spxOHjQrQcoGrTx+aSnmb48hyyFfgXC3yx/qvlXDau9vwCq3hKBVkS/mllmemzmDbJEqYl0ar0hn4YuNzzctjfnlR6adTc3KeVLoln5bM7TmaZYKwSB00IdLXrqPM0f5Mdjtxj7k6whf219uCd1ZpkHkI6JL/g7nPxAmC43+Dy6RmfJeMBjdzBRMJs5hsJNROcBVDdbxPxSt56GjSB1HPj4P6Syo5TifAC0XGKHcMVq7iI8y1fJdyO4NgkKmFk= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0501MB2012; 6:TNx9Troh6MksSsori/8gEamrzo55RGHYYg5R0EwulWv9E/WvxS1MIPTt/sUcIOQweEKpvuJD2p9xugHzWfFEALt6k+U3mpE/t4ZL6mj6HQkRIP92GCzfde4uok+QW1FA8Qaj2HIsfTYMWZKRQrDA9ueq08GUm7tcrlGhsHX4QEmFcUaR5HNic37DtGSxW37KUz8o+QYtao2/QMqBw0F06g7bouwUtkBF1k9uedT1u3a2jR4sffV6QOn1XhIyRFtC+mLlrfNTn8kS2eLasVa0dJea6gRMriswiDDvt2Sn7BIwm1Ciss7enhocRTRJZke+Rml+poQC05sb4K2Wr7nukJMhrl2bPwqkBgwg/jZcyJQ=; 5:tNa29EKzvltvktCTpWFCTqO0I+/i6clk/fYLWRuP6ax3vXGWQSmMCbMwDl62dbj/pOtwenA27oDVbjiF8XLvTnbAfiNzC34UuX3tzZD9Hfmq4Lb6hXIdbx16YgYAvY+rFGHFbTEvh5AcycnsYDd+xwe0jSuX4CvSiiyjHCaWGoU=; 24:/5VC+icalZ7vN65pJyHCbP3TSHtNjFIz7/2RRPhubRA+IQVmJkUd497iVNzovu119bSbqt+/nURL2qDdAQhLeBtUAZTfyuOVd7XE+luRcA0=; 7:AzM9uzw0F+Jaj/gwHPL1odwPC0ec5miEuL8b8JwIcGZ3kysTJVUQKpl1J802cNl+sBO9cvIlvPmjxL+ZH7VSk74uy3cFLgWtnt3XYUs4HVV/jDClaWPfQL8OIsHOzUGMWUHibvqXjMjGVWMnOg9oAlkNW9HGR6mWlwtR2R/V5nZxjbkuNV+zgYVgfISjVPpYfqZXqMxN2TyXgKA1NvZ844fND/32ucWRDQ1ufd8DaWMiNNz6kAI8nAkGggys1OeN SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jan 2018 10:46:49.0364 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 6cb5bce2-6f57-49eb-45fa-08d555bbf5aa X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0501MB2012 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: <netdev.vger.kernel.org> X-Mailing-List: netdev@vger.kernel.org |
Series |
ipv6: Align nexthop behaviour with IPv4
|
expand
|
On 1/7/18 3:45 AM, Ido Schimmel wrote: > Now that the RTNH_F_LINKDOWN flag is set in nexthops, we can avoid the > need to dereference the nexthop device and check its carrier and instead > check for the presence of the flag. > > Signed-off-by: Ido Schimmel <idosch@mellanox.com> > --- > net/ipv6/route.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) Acked-by: David Ahern <dsahern@gmail.com>
diff --git a/net/ipv6/route.c b/net/ipv6/route.c index 314e3bf41f6f..ab0eed43ed97 100644 --- a/net/ipv6/route.c +++ b/net/ipv6/route.c @@ -474,7 +474,7 @@ static struct rt6_info *rt6_multipath_select(struct rt6_info *match, if (route_choosen == 0) { struct inet6_dev *idev = sibling->rt6i_idev; - if (!netif_carrier_ok(sibling->dst.dev) && + if (sibling->rt6i_nh_flags & RTNH_F_LINKDOWN && idev->cnf.ignore_routes_with_linkdown) break; if (rt6_score_route(sibling, oif, strict) < 0) @@ -679,10 +679,9 @@ static struct rt6_info *find_match(struct rt6_info *rt, int oif, int strict, int m; bool match_do_rr = false; struct inet6_dev *idev = rt->rt6i_idev; - struct net_device *dev = rt->dst.dev; - if (dev && !netif_carrier_ok(dev) && - idev->cnf.ignore_routes_with_linkdown && + if (idev->cnf.ignore_routes_with_linkdown && + rt->rt6i_nh_flags & RTNH_F_LINKDOWN && !(strict & RT6_LOOKUP_F_IGNORE_LINKSTATE)) goto out;
Now that the RTNH_F_LINKDOWN flag is set in nexthops, we can avoid the need to dereference the nexthop device and check its carrier and instead check for the presence of the flag. Signed-off-by: Ido Schimmel <idosch@mellanox.com> --- net/ipv6/route.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-)