| To: | Alexey Kuznetsov <kuznet@xxxxxxxxxxxxx> |
|---|---|
| Subject: | Re: Route cache performance |
| From: | Robert Olsson <Robert.Olsson@xxxxxxxxxxx> |
| Date: | Fri, 26 Aug 2005 21:49:11 +0200 |
| Cc: | Simon Kirby <sim@xxxxxxxxxxxxx>, Robert Olsson <Robert.Olsson@xxxxxxxxxxx>, Eric Dumazet <dada1@xxxxxxxxxxxxx>, netdev@xxxxxxxxxxx |
| In-reply-to: | <20050826115520.GA12351@yakov.inr.ac.ru> |
| References: | <20050815213855.GA17832@netnation.com> <43014E27.1070104@cosmosbay.com> <20050823190852.GA20794@netnation.com> <17163.32645.202453.145416@robur.slu.se> <20050824000158.GA8137@netnation.com> <20050825181111.GB14336@netnation.com> <20050825200543.GA6612@yakov.inr.ac.ru> <20050825212211.GA23384@netnation.com> <20050826115520.GA12351@yakov.inr.ac.ru> |
| Sender: | netdev-bounce@xxxxxxxxxxx |
Hello!
This thread seems familar :)
I think Simon uses UP and it could be idea to check if the RCU deferred
deletion causes the problem.
Simon it would be interesting to see if the patch below makes any
difference given the assumption about UP was correct,
Cheers.
--ro
diff --git a/net/ipv4/route.c b/net/ipv4/route.c
--- a/net/ipv4/route.c
+++ b/net/ipv4/route.c
@@ -485,7 +485,11 @@ static struct file_operations rt_cpu_seq
static __inline__ void rt_free(struct rtable *rt)
{
multipath_remove(rt);
+#ifdef CONFIG_SMP
call_rcu_bh(&rt->u.dst.rcu_head, dst_rcu_free);
+#else
+ dst_free((struct dst_entry *)rt);
+#endif
}
static __inline__ void rt_drop(struct rtable *rt)
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | [PATCH 4/7] [IPV4]: Fix DST leak in icmp_push_reply(), Chris Wright |
|---|---|
| Next by Date: | Re: oops in 2.6.13-rc6-git12 in tcp/netfilter routines, Alessandro Suardi |
| Previous by Thread: | Re: Route cache performance, Alexey Kuznetsov |
| Next by Thread: | Re: Route cache performance, Simon Kirby |
| Indexes: | [Date] [Thread] [Top] [All Lists] |