diff options
author | Patrick McHardy <kaber@trash.net> | 2010-04-13 01:03:19 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-04-13 17:49:32 -0400 |
commit | e258beb22f4d3ea3dc88586ffc9c990d0eb03380 (patch) | |
tree | 7bd4dc984757894cbfb355189e9172a4a566596c /include/net | |
parent | f74e49b5613206fb18468bdc9509a1db746aa01b (diff) |
ipv4: ipmr: move unres_queue and timer to per-namespace data
The unres_queue is currently shared between all namespaces. Following patches
will additionally allow to create multiple multicast routing tables in each
namespace. Having a single shared queue for all these users seems to excessive,
move the queue and the cleanup timer to the per-namespace data to unshare it.
As a side-effect, this fixes a bug in the seq file iteration functions: the
first entry returned is always from the current namespace, entries returned
after that may belong to any namespace.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/netns/ipv4.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/net/netns/ipv4.h b/include/net/netns/ipv4.h index 2764994c9136..b15e518f952a 100644 --- a/include/net/netns/ipv4.h +++ b/include/net/netns/ipv4.h | |||
@@ -60,6 +60,8 @@ struct netns_ipv4 { | |||
60 | 60 | ||
61 | #ifdef CONFIG_IP_MROUTE | 61 | #ifdef CONFIG_IP_MROUTE |
62 | struct sock *mroute_sk; | 62 | struct sock *mroute_sk; |
63 | struct timer_list ipmr_expire_timer; | ||
64 | struct mfc_cache *mfc_unres_queue; | ||
63 | struct mfc_cache **mfc_cache_array; | 65 | struct mfc_cache **mfc_cache_array; |
64 | struct vif_device *vif_table; | 66 | struct vif_device *vif_table; |
65 | int maxvif; | 67 | int maxvif; |