Searched hist:"2 dce224f469f060b9998a5a869151ef83c08ce77" (Results 1 – 1 of 1) sorted by relevance
/openbmc/linux/net/core/ |
H A D | net_namespace.c | diff 2dce224f469f060b9998a5a869151ef83c08ce77 Mon Jan 13 15:39:22 CST 2020 Guillaume Nault <gnault@redhat.com> netns: protect netns ID lookups with RCU
__peernet2id() can be protected by RCU as it only calls idr_for_each(), which is RCU-safe, and never modifies the nsid table.
rtnl_net_dumpid() can also do lockless lookups. It does two nested idr_for_each() calls on nsid tables (one direct call and one indirect call because of rtnl_net_dumpid_one() calling __peernet2id()). The netnsid tables are never updated. Therefore it is safe to not take the nsid_lock and run within an RCU-critical section instead.
Signed-off-by: Guillaume Nault <gnault@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
|