Commit 10585b43 authored by David Ahern's avatar David Ahern Committed by David S. Miller
Browse files

ipv6: Remove fallback argument from ip6_hold_safe



net and null_fallback are redundant. Remove null_fallback in favor of
!net check.

Signed-off-by: default avatarDavid Ahern <dsahern@gmail.com>
Acked-by: default avatarWei Wang <weiwan@google.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 9ab948a9
Loading
Loading
Loading
Loading
+6 −7
Original line number Diff line number Diff line
@@ -1015,14 +1015,13 @@ static struct fib6_node* fib6_backtrack(struct fib6_node *fn,
	}
}

static bool ip6_hold_safe(struct net *net, struct rt6_info **prt,
			  bool null_fallback)
static bool ip6_hold_safe(struct net *net, struct rt6_info **prt)
{
	struct rt6_info *rt = *prt;

	if (dst_hold_safe(&rt->dst))
		return true;
	if (null_fallback) {
	if (net) {
		rt = net->ipv6.ip6_null_entry;
		dst_hold(&rt->dst);
	} else {
@@ -1089,7 +1088,7 @@ restart:
	/* Search through exception table */
	rt = rt6_find_cached_rt(f6i, &fl6->daddr, &fl6->saddr);
	if (rt) {
		if (ip6_hold_safe(net, &rt, true))
		if (ip6_hold_safe(net, &rt))
			dst_use_noref(&rt->dst, jiffies);
	} else if (f6i == net->ipv6.fib6_null_entry) {
		rt = net->ipv6.ip6_null_entry;
@@ -1240,7 +1239,7 @@ static struct rt6_info *rt6_get_pcpu_route(struct fib6_info *rt)
	pcpu_rt = *p;

	if (pcpu_rt)
		ip6_hold_safe(NULL, &pcpu_rt, false);
		ip6_hold_safe(NULL, &pcpu_rt);

	return pcpu_rt;
}
@@ -1865,7 +1864,7 @@ struct rt6_info *ip6_pol_route(struct net *net, struct fib6_table *table,
	/*Search through exception table */
	rt = rt6_find_cached_rt(f6i, &fl6->daddr, &fl6->saddr);
	if (rt) {
		if (ip6_hold_safe(net, &rt, true))
		if (ip6_hold_safe(net, &rt))
			dst_use_noref(&rt->dst, jiffies);

		rcu_read_unlock();
@@ -2480,7 +2479,7 @@ restart:

out:
	if (ret)
		ip6_hold_safe(net, &ret, true);
		ip6_hold_safe(net, &ret);
	else
		ret = ip6_create_rt_rcu(rt);