aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv4
diff options
context:
space:
mode:
authorDaniel Lezcano <dlezcano@fr.ibm.com>2008-01-18 06:56:57 -0500
committerDavid S. Miller <davem@davemloft.net>2008-01-28 18:02:46 -0500
commit569d36452ee26c08523cc9f658901c5188640853 (patch)
treef296ea41b92f655031f9345d3febd8319e5a06ee /net/ipv4
parenta6501e080c318f8d4467679d17807f42b3a33cd5 (diff)
[NETNS][DST] dst: pass the dst_ops as parameter to the gc functions
The garbage collection function receive the dst_ops structure as parameter. This is useful for the next incoming patchset because it will need the dst_ops (there will be several instances) and the network namespace pointer (contained in the dst_ops). The protocols which do not take care of the namespaces will not be impacted by this change (expect for the function signature), they do just ignore the parameter. Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4')
-rw-r--r--net/ipv4/route.c6
-rw-r--r--net/ipv4/xfrm4_policy.c2
2 files changed, 4 insertions, 4 deletions
diff --git a/net/ipv4/route.c b/net/ipv4/route.c
index 1e59c0d4b11e..fc0145385e80 100644
--- a/net/ipv4/route.c
+++ b/net/ipv4/route.c
@@ -154,7 +154,7 @@ static void ipv4_dst_ifdown(struct dst_entry *dst,
154static struct dst_entry *ipv4_negative_advice(struct dst_entry *dst); 154static struct dst_entry *ipv4_negative_advice(struct dst_entry *dst);
155static void ipv4_link_failure(struct sk_buff *skb); 155static void ipv4_link_failure(struct sk_buff *skb);
156static void ip_rt_update_pmtu(struct dst_entry *dst, u32 mtu); 156static void ip_rt_update_pmtu(struct dst_entry *dst, u32 mtu);
157static int rt_garbage_collect(void); 157static int rt_garbage_collect(struct dst_ops *ops);
158 158
159 159
160static struct dst_ops ipv4_dst_ops = { 160static struct dst_ops ipv4_dst_ops = {
@@ -820,7 +820,7 @@ static void rt_secret_rebuild(unsigned long dummy)
820 and when load increases it reduces to limit cache size. 820 and when load increases it reduces to limit cache size.
821 */ 821 */
822 822
823static int rt_garbage_collect(void) 823static int rt_garbage_collect(struct dst_ops *ops)
824{ 824{
825 static unsigned long expire = RT_GC_TIMEOUT; 825 static unsigned long expire = RT_GC_TIMEOUT;
826 static unsigned long last_gc; 826 static unsigned long last_gc;
@@ -1035,7 +1035,7 @@ restart:
1035 int saved_int = ip_rt_gc_min_interval; 1035 int saved_int = ip_rt_gc_min_interval;
1036 ip_rt_gc_elasticity = 1; 1036 ip_rt_gc_elasticity = 1;
1037 ip_rt_gc_min_interval = 0; 1037 ip_rt_gc_min_interval = 0;
1038 rt_garbage_collect(); 1038 rt_garbage_collect(&ipv4_dst_ops);
1039 ip_rt_gc_min_interval = saved_int; 1039 ip_rt_gc_min_interval = saved_int;
1040 ip_rt_gc_elasticity = saved_elasticity; 1040 ip_rt_gc_elasticity = saved_elasticity;
1041 goto restart; 1041 goto restart;
diff --git a/net/ipv4/xfrm4_policy.c b/net/ipv4/xfrm4_policy.c
index 656345f75e0d..f04516c880fb 100644
--- a/net/ipv4/xfrm4_policy.c
+++ b/net/ipv4/xfrm4_policy.c
@@ -185,7 +185,7 @@ _decode_session4(struct sk_buff *skb, struct flowi *fl, int reverse)
185 fl->fl4_tos = iph->tos; 185 fl->fl4_tos = iph->tos;
186} 186}
187 187
188static inline int xfrm4_garbage_collect(void) 188static inline int xfrm4_garbage_collect(struct dst_ops *ops)
189{ 189{
190 xfrm4_policy_afinfo.garbage_collect(); 190 xfrm4_policy_afinfo.garbage_collect();
191 return (atomic_read(&xfrm4_dst_ops.entries) > xfrm4_dst_ops.gc_thresh*2); 191 return (atomic_read(&xfrm4_dst_ops.entries) > xfrm4_dst_ops.gc_thresh*2);