diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2007-09-27 01:10:56 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-10-10 19:52:49 -0400 |
commit | 2774c7aba6c97a2535be3309a2209770953780b3 (patch) | |
tree | 9327c795707f6d723c6395c31e1c060e70b5e0db /include/net | |
parent | 0cc217e16cb8ca8ef2544363571fce94259900e0 (diff) |
[NET]: Make the loopback device per network namespace.
This patch makes loopback_dev per network namespace. Adding
code to create a different loopback device for each network
namespace and adding the code to free a loopback device
when a network namespace exits.
This patch modifies all users the loopback_dev so they
access it as init_net.loopback_dev, keeping all of the
code compiling and working. A later pass will be needed to
update the users to use something other than the initial network
namespace.
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/net_namespace.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/net/net_namespace.h b/include/net/net_namespace.h index 3ea4194613ed..13b0e3b547f0 100644 --- a/include/net/net_namespace.h +++ b/include/net/net_namespace.h | |||
@@ -9,6 +9,7 @@ | |||
9 | #include <linux/list.h> | 9 | #include <linux/list.h> |
10 | 10 | ||
11 | struct proc_dir_entry; | 11 | struct proc_dir_entry; |
12 | struct net_device; | ||
12 | struct net { | 13 | struct net { |
13 | atomic_t count; /* To decided when the network | 14 | atomic_t count; /* To decided when the network |
14 | * namespace should be freed. | 15 | * namespace should be freed. |
@@ -23,6 +24,8 @@ struct net { | |||
23 | struct proc_dir_entry *proc_net_stat; | 24 | struct proc_dir_entry *proc_net_stat; |
24 | struct proc_dir_entry *proc_net_root; | 25 | struct proc_dir_entry *proc_net_root; |
25 | 26 | ||
27 | struct net_device *loopback_dev; /* The loopback */ | ||
28 | |||
26 | struct list_head dev_base_head; | 29 | struct list_head dev_base_head; |
27 | struct hlist_head *dev_name_head; | 30 | struct hlist_head *dev_name_head; |
28 | struct hlist_head *dev_index_head; | 31 | struct hlist_head *dev_index_head; |