|
@@ -202,11 +202,6 @@ EXPORT_SYMBOL(ip_tos2prio);
|
|
|
static DEFINE_PER_CPU(struct rt_cache_stat, rt_cache_stat);
|
|
|
#define RT_CACHE_STAT_INC(field) __this_cpu_inc(rt_cache_stat.field)
|
|
|
|
|
|
-static inline int rt_genid(struct net *net)
|
|
|
-{
|
|
|
- return atomic_read(&net->ipv4.rt_genid);
|
|
|
-}
|
|
|
-
|
|
|
#ifdef CONFIG_PROC_FS
|
|
|
static void *rt_cache_seq_start(struct seq_file *seq, loff_t *pos)
|
|
|
{
|
|
@@ -449,7 +444,7 @@ static inline bool rt_is_expired(const struct rtable *rth)
|
|
|
|
|
|
void rt_cache_flush(struct net *net)
|
|
|
{
|
|
|
- atomic_inc(&net->ipv4.rt_genid);
|
|
|
+ rt_genid_bump(net);
|
|
|
}
|
|
|
|
|
|
static struct neighbour *ipv4_neigh_lookup(const struct dst_entry *dst,
|
|
@@ -2506,7 +2501,7 @@ static __net_initdata struct pernet_operations sysctl_route_ops = {
|
|
|
|
|
|
static __net_init int rt_genid_init(struct net *net)
|
|
|
{
|
|
|
- atomic_set(&net->ipv4.rt_genid, 0);
|
|
|
+ atomic_set(&net->rt_genid, 0);
|
|
|
get_random_bytes(&net->ipv4.dev_addr_genid,
|
|
|
sizeof(net->ipv4.dev_addr_genid));
|
|
|
return 0;
|