From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kirill Tkhai Subject: [PATCH v3 2/2] net: Remove spinlock from get_net_ns_by_id() Date: Tue, 16 Jan 2018 12:31:54 +0300 Message-ID: <151609511167.12003.7323991178420491612.stgit@localhost.localdomain> References: <151609506842.12003.15536977929261353291.stgit@localhost.localdomain> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Cc: davem@davemloft.net, eric.dumazet@gmail.com, ebiederm@xmission.com, ktkhai@virtuozzo.com To: netdev@vger.kernel.org Return-path: Received: from mail-eopbgr40113.outbound.protection.outlook.com ([40.107.4.113]:58672 "EHLO EUR03-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750812AbeAPJb7 (ORCPT ); Tue, 16 Jan 2018 04:31:59 -0500 In-Reply-To: <151609506842.12003.15536977929261353291.stgit@localhost.localdomain> Sender: netdev-owner@vger.kernel.org List-ID: idr_find() is safe under rcu_read_lock() and maybe_get_net() guarantees that net is alive. Signed-off-by: Kirill Tkhai --- net/core/net_namespace.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/net/core/net_namespace.c b/net/core/net_namespace.c index 3c77d84ad60d..1ccb953b3b09 100644 --- a/net/core/net_namespace.c +++ b/net/core/net_namespace.c @@ -273,11 +273,9 @@ struct net *get_net_ns_by_id(struct net *net, int id) return NULL; rcu_read_lock(); - spin_lock_bh(&net->nsid_lock); peer = idr_find(&net->netns_ids, id); if (peer) peer = maybe_get_net(peer); - spin_unlock_bh(&net->nsid_lock); rcu_read_unlock(); return peer;