diff options
| author | Olof Johansson <olof@lixom.net> | 2012-11-25 21:34:34 -0800 | 
|---|---|---|
| committer | Olof Johansson <olof@lixom.net> | 2012-11-25 21:34:34 -0800 | 
| commit | 0f9cb211ba5db93d488fe6b154138231fdd0e22d (patch) | |
| tree | 293871b042e9ebc49b1d783f1b110eef541ddc97 /net/ipv4/route.c | |
| parent | 007108a2279123ad6639b6c653ad1a731febb60f (diff) | |
| parent | 9489e9dcae718d5fde988e4a684a0f55b5f94d17 (diff) | |
| download | olio-linux-3.10-0f9cb211ba5db93d488fe6b154138231fdd0e22d.tar.xz olio-linux-3.10-0f9cb211ba5db93d488fe6b154138231fdd0e22d.zip  | |
Merge tag 'v3.7-rc7' into next/cleanup
Merging in mainline back to next/cleanup since it has collected a few
conflicts between fixes going upstream and some of the cleanup patches.
Git doesn't auto-resolve some of them, and they're mostly noise so let's
take care of it locally.
Conflicts are in:
	arch/arm/mach-omap2/omap_hwmod_44xx_data.c
	arch/arm/plat-omap/i2c.c
	drivers/video/omap2/dss/dss.c
Signed-off-by: Olof Johansson <olof@lixom.net>
Diffstat (limited to 'net/ipv4/route.c')
| -rw-r--r-- | net/ipv4/route.c | 9 | 
1 files changed, 6 insertions, 3 deletions
diff --git a/net/ipv4/route.c b/net/ipv4/route.c index a8c651216fa..df251424d81 100644 --- a/net/ipv4/route.c +++ b/net/ipv4/route.c @@ -1785,6 +1785,7 @@ static struct rtable *__mkroute_output(const struct fib_result *res,  	if (dev_out->flags & IFF_LOOPBACK)  		flags |= RTCF_LOCAL; +	do_cache = true;  	if (type == RTN_BROADCAST) {  		flags |= RTCF_BROADCAST | RTCF_LOCAL;  		fi = NULL; @@ -1793,6 +1794,8 @@ static struct rtable *__mkroute_output(const struct fib_result *res,  		if (!ip_check_mc_rcu(in_dev, fl4->daddr, fl4->saddr,  				     fl4->flowi4_proto))  			flags &= ~RTCF_LOCAL; +		else +			do_cache = false;  		/* If multicast route do not exist use  		 * default one, but do not gateway in this case.  		 * Yes, it is hack. @@ -1802,8 +1805,8 @@ static struct rtable *__mkroute_output(const struct fib_result *res,  	}  	fnhe = NULL; -	do_cache = fi != NULL; -	if (fi) { +	do_cache &= fi != NULL; +	if (do_cache) {  		struct rtable __rcu **prth;  		struct fib_nh *nh = &FIB_RES_NH(*res); @@ -2597,7 +2600,7 @@ int __init ip_rt_init(void)  		pr_err("Unable to create route proc files\n");  #ifdef CONFIG_XFRM  	xfrm_init(); -	xfrm4_init(ip_rt_max_size); +	xfrm4_init();  #endif  	rtnl_register(PF_INET, RTM_GETROUTE, inet_rtm_getroute, NULL, NULL);  |