route: use read_mostly
Subsystems (3)
PATCH 1/1 route: use read_mostly
The route table parameters are set based on system memory and sysctl values that almost never change. Also the genid only changes every 10 minutes.
RTprint is defined by never used.
Signed-off-by Stephen Hemminger <[email protected]>
---
This patch is for net-2.6.26
net/ipv4/route.c +17 -19
@@ -118,21 +118,19 @@#define RT_GC_TIMEOUT (300*HZ)static int ip_rt_max_size; -static int ip_rt_gc_timeout =RT_GC_TIMEOUT ; -static int ip_rt_gc_interval =60 *HZ ; -static int ip_rt_gc_min_interval =HZ /2 ; -static int ip_rt_redirect_number =9 ; -static int ip_rt_redirect_load =HZ /50 ; -static int ip_rt_redirect_silence = ((HZ /50 ) << (9 +1 )); -static int ip_rt_error_cost =HZ ; -static int ip_rt_error_burst =5 *HZ ; -static int ip_rt_gc_elasticity =8 ; -static int ip_rt_mtu_expires =10 *60 *HZ ; -static int ip_rt_min_pmtu =512 +20 +20 ; -static int ip_rt_min_advmss =256 ; -static int ip_rt_secret_interval =10 *60 *HZ ; - -#define RTprint(a...) printk(KERN_DEBUG a) +static int ip_rt_gc_timeout__read_mostly =RT_GC_TIMEOUT ; +static int ip_rt_gc_interval__read_mostly =60 *HZ ; +static int ip_rt_gc_min_interval__read_mostly =HZ /2 ; +static int ip_rt_redirect_number__read_mostly =9 ; +static int ip_rt_redirect_load__read_mostly =HZ /50 ; +static int ip_rt_redirect_silence__read_mostly = ((HZ /50 ) << (9 +1 )); +static int ip_rt_error_cost__read_mostly =HZ ; +static int ip_rt_error_burst__read_mostly =5 *HZ ; +static int ip_rt_gc_elasticity__read_mostly =8 ; +static int ip_rt_mtu_expires__read_mostly =10 *60 *HZ ; +static int ip_rt_min_pmtu__read_mostly =512 +20 +20 ; +static int ip_rt_min_advmss__read_mostly =256 ; +static int ip_rt_secret_interval__read_mostly =10 *60 *HZ ;static void rt_worker_func (struct work_struct *work); static DECLARE_DELAYED_WORK(expires_work, rt_worker_func);
@@ -252,10 +250,10 @@ static inline void rt_hash_lock_init(voi }#endif -static struct rt_hash_bucket *rt_hash_table; -static unsigned rt_hash_mask; -static unsigned int rt_hash_log; -static atomic_t rt_genid; +static struct rt_hash_bucket *rt_hash_table__read_mostly ; +static unsigned rt_hash_mask__read_mostly ; +static unsigned int rt_hash_log__read_mostly ; +static atomic_t rt_genid__read_mostly ; static DEFINE_PER_CPU(struct rt_cache_stat, rt_cache_stat);#define RT_CACHE_STAT_INC (field) \