ipv6: delay fib6_sernum increase in fib6_add
only increase fib6_sernum in net namespace after add fib6_info successfully. Signed-off-by: zhang kai <zhangkaiheb@126.com> Reviewed-by: David Ahern <dsahern@kernel.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
f4bb62e64c
commit
e87b505227
|
@ -1378,7 +1378,6 @@ int fib6_add(struct fib6_node *root, struct fib6_info *rt,
|
|||
int err = -ENOMEM;
|
||||
int allow_create = 1;
|
||||
int replace_required = 0;
|
||||
int sernum = fib6_new_sernum(info->nl_net);
|
||||
|
||||
if (info->nlh) {
|
||||
if (!(info->nlh->nlmsg_flags & NLM_F_CREATE))
|
||||
|
@ -1478,7 +1477,7 @@ int fib6_add(struct fib6_node *root, struct fib6_info *rt,
|
|||
if (!err) {
|
||||
if (rt->nh)
|
||||
list_add(&rt->nh_list, &rt->nh->f6i_list);
|
||||
__fib6_update_sernum_upto_root(rt, sernum);
|
||||
__fib6_update_sernum_upto_root(rt, fib6_new_sernum(info->nl_net));
|
||||
fib6_start_gc(info->nl_net, rt);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue