Messages in this thread | | | Date | Thu, 23 Mar 2006 22:37:26 +0100 (CET) | From | Jesper Dangaard Brouer <> | Subject | Re: Kernel panic: Route cache, RCU, possibly FIB trie. |
| |
On Thu, 23 Mar 2006, Eric Dumazet wrote:
> Jesper Dangaard Brouer a écrit : > >>> grep . /proc/sys/net/ipv4/route/* >>> /proc/sys/net/ipv4/route/error_burst:5000 >>> /proc/sys/net/ipv4/route/error_cost:1000 >>> grep: /proc/sys/net/ipv4/route/flush: Operation not permitted >>> /proc/sys/net/ipv4/route/gc_elasticity:8 >>> /proc/sys/net/ipv4/route/gc_interval:60 >>> /proc/sys/net/ipv4/route/gc_min_interval:0 >>> /proc/sys/net/ipv4/route/gc_min_interval_ms:500 >>> /proc/sys/net/ipv4/route/gc_thresh:65536 >>> /proc/sys/net/ipv4/route/gc_timeout:300 >>> /proc/sys/net/ipv4/route/max_delay:10 >>> /proc/sys/net/ipv4/route/max_size:1048576 >>> /proc/sys/net/ipv4/route/min_adv_mss:256 >>> /proc/sys/net/ipv4/route/min_delay:2 >>> /proc/sys/net/ipv4/route/min_pmtu:552 >>> /proc/sys/net/ipv4/route/mtu_expires:600 >>> /proc/sys/net/ipv4/route/redirect_load:20 >>> /proc/sys/net/ipv4/route/redirect_number:9 >>> /proc/sys/net/ipv4/route/redirect_silence:20480 >>> /proc/sys/net/ipv4/route/secret_interval:600 > > I would say : Change the settings :) > > echo 2 > /proc/sys/net/ipv4/route/gc_elasticity > echo 1 > /proc/sys/net/ipv4/route/gc_interval > echo 131072 > /proc/sys/net/ipv4/route/gc_thresh
These parameters do not solve the problem. I think you missed my previous point. The parameter that needs adjustment is:
/proc/sys/net/ipv4/route/max_size
The garbage collector will not be activated before the number of entries are above "max_size" (see: function rt_garbage_collect).
I have set: /proc/sys/net/ipv4/route/gc_thresh:30000 /proc/sys/net/ipv4/route/max_size:30000
Which solves the problem of the route cache growing too large too fast.
I have read the route.c code again, to see if I missed something. Are you trying to make the function "rt_check_expire" to do the cleanup?
I have tried your parameters, and it does not have the desired effect.
> and watch the output of : > > rtstat -c 100 -i 1 > (you might have to recompile lnstat/rtstat from iproute2 package from > http://developer.osdl.org/dev/iproute2/download/
I prefer to use Robert's version of rtstat ;-)
Hilsen Jesper Brouer
-- ------------------------------------------------------------------- Cand. scient datalog Dept. of Computer Science, University of Copenhagen -------------------------------------------------------------------
| |