diff options
Diffstat (limited to 'include/net/net_namespace.h')
| -rw-r--r-- | include/net/net_namespace.h | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/include/net/net_namespace.h b/include/net/net_namespace.h index bd10a7908993..1bf812b21fb7 100644 --- a/include/net/net_namespace.h +++ b/include/net/net_namespace.h | |||
| @@ -41,6 +41,8 @@ struct net { | |||
| 41 | * destroy on demand | 41 | * destroy on demand |
| 42 | */ | 42 | */ |
| 43 | #endif | 43 | #endif |
| 44 | spinlock_t rules_mod_lock; | ||
| 45 | |||
| 44 | struct list_head list; /* list of network namespaces */ | 46 | struct list_head list; /* list of network namespaces */ |
| 45 | struct list_head cleanup_list; /* namespaces on death row */ | 47 | struct list_head cleanup_list; /* namespaces on death row */ |
| 46 | struct list_head exit_list; /* Use only net_mutex */ | 48 | struct list_head exit_list; /* Use only net_mutex */ |
| @@ -52,7 +54,8 @@ struct net { | |||
| 52 | struct ctl_table_set sysctls; | 54 | struct ctl_table_set sysctls; |
| 53 | #endif | 55 | #endif |
| 54 | 56 | ||
| 55 | struct net_device *loopback_dev; /* The loopback */ | 57 | struct sock *rtnl; /* rtnetlink socket */ |
| 58 | struct sock *genl_sock; | ||
| 56 | 59 | ||
| 57 | struct list_head dev_base_head; | 60 | struct list_head dev_base_head; |
| 58 | struct hlist_head *dev_name_head; | 61 | struct hlist_head *dev_name_head; |
| @@ -60,11 +63,9 @@ struct net { | |||
| 60 | 63 | ||
| 61 | /* core fib_rules */ | 64 | /* core fib_rules */ |
| 62 | struct list_head rules_ops; | 65 | struct list_head rules_ops; |
| 63 | spinlock_t rules_mod_lock; | ||
| 64 | 66 | ||
| 65 | struct sock *rtnl; /* rtnetlink socket */ | ||
| 66 | struct sock *genl_sock; | ||
| 67 | 67 | ||
| 68 | struct net_device *loopback_dev; /* The loopback */ | ||
| 68 | struct netns_core core; | 69 | struct netns_core core; |
| 69 | struct netns_mib mib; | 70 | struct netns_mib mib; |
| 70 | struct netns_packet packet; | 71 | struct netns_packet packet; |
| @@ -84,13 +85,15 @@ struct net { | |||
| 84 | struct sock *nfnl; | 85 | struct sock *nfnl; |
| 85 | struct sock *nfnl_stash; | 86 | struct sock *nfnl_stash; |
| 86 | #endif | 87 | #endif |
| 87 | #ifdef CONFIG_XFRM | ||
| 88 | struct netns_xfrm xfrm; | ||
| 89 | #endif | ||
| 90 | #ifdef CONFIG_WEXT_CORE | 88 | #ifdef CONFIG_WEXT_CORE |
| 91 | struct sk_buff_head wext_nlevents; | 89 | struct sk_buff_head wext_nlevents; |
| 92 | #endif | 90 | #endif |
| 93 | struct net_generic *gen; | 91 | struct net_generic __rcu *gen; |
| 92 | |||
| 93 | /* Note : following structs are cache line aligned */ | ||
| 94 | #ifdef CONFIG_XFRM | ||
| 95 | struct netns_xfrm xfrm; | ||
| 96 | #endif | ||
| 94 | }; | 97 | }; |
| 95 | 98 | ||
| 96 | 99 | ||
