Lines Matching refs:fib6_info
45 int (*func)(struct fib6_info *, void *arg);
57 static struct fib6_info *fib6_find_prefix(struct net *net,
107 void fib6_update_sernum(struct net *net, struct fib6_info *f6i) in fib6_update_sernum()
147 struct fib6_info *fib6_info_alloc(gfp_t gfp_flags, bool with_fib6_nh) in fib6_info_alloc()
149 struct fib6_info *f6i; in fib6_info_alloc()
168 struct fib6_info *f6i = container_of(head, struct fib6_info, rcu); in fib6_info_destroy_rcu()
364 struct fib6_info *rt, in call_fib6_entry_notifier()
377 struct fib6_info *rt, in call_fib6_multipath_entry_notifier()
392 struct fib6_info *rt, in call_fib6_entry_notifiers()
406 struct fib6_info *rt, in call_fib6_multipath_entry_notifiers()
420 int call_fib6_entry_notifiers_replace(struct net *net, struct fib6_info *rt) in call_fib6_entry_notifiers_replace()
437 static int fib6_rt_dump(struct fib6_info *rt, struct fib6_dump_arg *arg) in fib6_rt_dump()
518 struct fib6_info *rt; in fib6_dump_node()
542 struct fib6_info, in fib6_dump_node()
714 void fib6_metric_set(struct fib6_info *f6i, int metric, u32 val) in fib6_metric_set()
761 struct fib6_info *leaf = rcu_dereference_protected(fn->leaf, in fib6_add_1()
956 const struct fib6_info *match, in __fib6_drop_pcpu_from()
980 struct fib6_info *from; in __fib6_drop_pcpu_from()
982 from = xchg((__force struct fib6_info **)&pcpu_rt->from, NULL); in __fib6_drop_pcpu_from()
989 struct fib6_info *from;
1001 static void fib6_drop_pcpu_from(struct fib6_info *f6i, in fib6_drop_pcpu_from()
1026 static void fib6_purge_rt(struct fib6_info *rt, struct fib6_node *fn, in fib6_purge_rt()
1046 struct fib6_info *leaf = rcu_dereference_protected(fn->leaf, in fib6_purge_rt()
1048 struct fib6_info *new_leaf; in fib6_purge_rt()
1066 static int fib6_add_rt2node(struct fib6_node *fn, struct fib6_info *rt, in fib6_add_rt2node()
1070 struct fib6_info *leaf = rcu_dereference_protected(fn->leaf, in fib6_add_rt2node()
1072 struct fib6_info *iter = NULL; in fib6_add_rt2node()
1073 struct fib6_info __rcu **ins; in fib6_add_rt2node()
1074 struct fib6_info __rcu **fallback_ins = NULL; in fib6_add_rt2node()
1170 struct fib6_info *sibling, *temp_sibling; in fib6_add_rt2node()
1227 struct fib6_info *sibling, *next_sibling; in fib6_add_rt2node()
1324 static void fib6_start_gc(struct net *net, struct fib6_info *rt) in fib6_start_gc()
1339 static void __fib6_update_sernum_upto_root(struct fib6_info *rt, in __fib6_update_sernum_upto_root()
1354 void fib6_update_sernum_upto_root(struct net *net, struct fib6_info *rt) in fib6_update_sernum_upto_root()
1360 void fib6_update_sernum_stub(struct net *net, struct fib6_info *f6i) in fib6_update_sernum_stub()
1374 int fib6_add(struct fib6_node *root, struct fib6_info *rt, in fib6_add()
1394 offsetof(struct fib6_info, fib6_dst), allow_create, in fib6_add()
1435 offsetof(struct fib6_info, fib6_src), in fib6_add()
1454 offsetof(struct fib6_info, fib6_src), in fib6_add()
1493 struct fib6_info *pn_leaf = in fib6_add()
1582 struct fib6_info *leaf = rcu_dereference(fn->leaf); in fib6_node_lookup_1()
1624 .offset = offsetof(struct fib6_info, fib6_dst), in fib6_node_lookup()
1629 .offset = offsetof(struct fib6_info, fib6_src), in fib6_node_lookup()
1665 struct fib6_info *leaf = rcu_dereference(fn->leaf); in fib6_locate_1()
1715 offsetof(struct fib6_info, fib6_dst), in fib6_locate()
1726 offsetof(struct fib6_info, fib6_src), in fib6_locate()
1745 static struct fib6_info *fib6_find_prefix(struct net *net, in fib6_find_prefix()
1804 struct fib6_info *fn_leaf = rcu_dereference_protected(fn->leaf, in fib6_repair_tree()
1806 struct fib6_info *pn_leaf = rcu_dereference_protected(pn->leaf, in fib6_repair_tree()
1808 struct fib6_info *new_fn_leaf; in fib6_repair_tree()
1903 struct fib6_info __rcu **rtp, struct nl_info *info) in fib6_del_route()
1905 struct fib6_info *leaf, *replace_rt = NULL; in fib6_del_route()
1907 struct fib6_info *rt = rcu_dereference_protected(*rtp, in fib6_del_route()
1940 struct fib6_info *sibling, *next_sibling; in fib6_del_route()
1999 int fib6_del(struct fib6_info *rt, struct nl_info *info) in fib6_del()
2002 struct fib6_info __rcu **rtp; in fib6_del()
2003 struct fib6_info __rcu **rtp_next; in fib6_del()
2023 struct fib6_info *cur = rcu_dereference_protected(*rtp, in fib6_del()
2169 struct fib6_info *rt; in fib6_clean_node()
2205 struct fib6_info, fib6_siblings); in fib6_clean_node()
2224 int (*func)(struct fib6_info *, void *arg), in fib6_clean_tree() argument
2244 int (*func)(struct fib6_info *, void *), in __fib6_clean_all() argument
2264 void fib6_clean_all(struct net *net, int (*func)(struct fib6_info *, void *), in fib6_clean_all() argument
2271 int (*func)(struct fib6_info *, void *), in fib6_clean_all_skip_notify() argument
2288 static int fib6_age(struct fib6_info *rt, void *arg) in fib6_age()
2487 struct fib6_info *rt = v; in ipv6_route_native_seq_show()
2588 struct fib6_info *n; in ipv6_route_seq_next()
2596 n = rcu_dereference_bh(((struct fib6_info *)v)->fib6_next); in ipv6_route_seq_next()