Messages in this thread | | | Date | Fri, 10 May 2019 15:13:33 -0700 (PDT) | Subject | Re: [PATCH v2 2/3] netns: add netns_evict into netns_operations | From | David Miller <> |
| |
From: Wenbin Zeng <wenbin.zeng@gmail.com> Date: Fri, 10 May 2019 14:36:02 +0800
> The newly added netns_evict() shall be called when the netns inode being > evicted. It provides another path to release netns refcounts, previously > netns_put() is the only choice, but it is not able to release all netns > refcount, for example, a rpc client holds two netns refcounts, these > refcounts are supposed to be released when the rpc client is freed, but > the code to free rpc client is normally triggered by put() callback only > when netns refcount gets to 0, specifically: > refcount=0 -> cleanup_net() -> ops_exit_list -> free rpc client > But netns refcount will never get to 0 before rpc client gets freed, to > break the deadlock, the code to free rpc client can be put into the newly > added netns_evict. > > Signed-off-by: Wenbin Zeng <wenbinzeng@tencent.com>
Acked-by: David S. Miller <davem@davemloft.net>
| |