net: Add support for batching network namespace cleanups
- Add exit_list to struct net to support building lists of network namespaces to cleanup. - Add exit_batch to pernet_operations to allow running operations only once during a network namespace exit. Instead of once per network namespace. - Factor opt ops_exit_list and ops_exit_free so the logic with cleanup up a network namespace does not need to be duplicated. Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
8153a10c08
commit
72ad937abd
@@ -43,6 +43,7 @@ struct net {
|
||||
#endif
|
||||
struct list_head list; /* list of network namespaces */
|
||||
struct list_head cleanup_list; /* namespaces on death row */
|
||||
struct list_head exit_list; /* Use only net_mutex */
|
||||
|
||||
struct proc_dir_entry *proc_net;
|
||||
struct proc_dir_entry *proc_net_stat;
|
||||
@@ -236,6 +237,7 @@ struct pernet_operations {
|
||||
struct list_head list;
|
||||
int (*init)(struct net *net);
|
||||
void (*exit)(struct net *net);
|
||||
void (*exit_batch)(struct list_head *net_exit_list);
|
||||
int *id;
|
||||
size_t size;
|
||||
};
|
||||
|
Reference in New Issue
Block a user