Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
* many times (2^24) without giving recent rt_genid.
* Jenkins hash is strong enough that litle changes of rt_genid are OK.
*/
* many times (2^24) without giving recent rt_genid.
* Jenkins hash is strong enough that litle changes of rt_genid are OK.
*/
-static void rt_cache_invalidate(void)
+static void rt_cache_invalidate(struct net *net)
*/
void rt_cache_flush(struct net *net, int delay)
{
*/
void rt_cache_flush(struct net *net, int delay)
{
+ rt_cache_invalidate(net);
if (delay >= 0)
rt_do_flush(!in_softirq());
}
if (delay >= 0)
rt_do_flush(!in_softirq());
}
static void rt_secret_rebuild(unsigned long __net)
{
struct net *net = (struct net *)__net;
static void rt_secret_rebuild(unsigned long __net)
{
struct net *net = (struct net *)__net;
+ rt_cache_invalidate(net);
mod_timer(&net->ipv4.rt_secret_timer, jiffies + ip_rt_secret_interval);
}
mod_timer(&net->ipv4.rt_secret_timer, jiffies + ip_rt_secret_interval);
}