Lines Matching defs:fib6_info

109 static size_t rt6_nlmsg_size(struct fib6_info *f6i);
111 struct fib6_info *rt, struct dst_entry *dst,
120 static struct fib6_info *rt6_add_route_info(struct net *net,
125 static struct fib6_info *rt6_get_route_info(struct net *net,
284 static const struct fib6_info fib6_null_entry_template = {
357 struct fib6_info *from;
377 struct fib6_info *from;
400 struct fib6_info *from;
414 static struct fib6_info *
415 rt6_multipath_first_sibling_rcu(const struct fib6_info *rt)
417 struct fib6_info *iter;
442 struct fib6_info *first, *match = res->f6i;
443 struct fib6_info *sibling;
565 struct fib6_info *f6i = res->f6i;
566 struct fib6_info *spf6i;
824 static void __find_rr_leaf(struct fib6_info *f6i_start,
825 struct fib6_info *nomatch, u32 metric,
826 struct fib6_result *res, struct fib6_info **cont,
829 struct fib6_info *f6i;
881 static void find_rr_leaf(struct fib6_node *fn, struct fib6_info *leaf,
882 struct fib6_info *rr_head, int oif, int strict,
886 struct fib6_info *cont = NULL;
905 struct fib6_info *leaf = rcu_dereference(fn->leaf);
906 struct fib6_info *rt0;
935 struct fib6_info *next = rcu_dereference(rt0->fib6_next);
975 struct fib6_info *rt;
1097 static unsigned short fib6_info_dst_flags(struct fib6_info *rt)
1133 struct fib6_info *f6i = res->f6i;
1161 static void rt6_set_from(struct rt6_info *rt, struct fib6_info *from)
1173 struct fib6_info *f6i = res->f6i;
1228 struct fib6_info *f6i = res->f6i;
1343 static int __ip6_ins_rt(struct fib6_info *rt, struct nl_info *info,
1357 int ip6_ins_rt(struct net *net, struct fib6_info *rt)
1368 struct fib6_info *f6i = res->f6i;
1408 struct fib6_info *f6i = res->f6i;
1476 struct fib6_info *from;
1703 struct fib6_info *f6i = res->f6i;
1782 static void fib6_nh_flush_exceptions(struct fib6_nh *nh, struct fib6_info *from)
1814 struct fib6_info *f6i = arg;
1821 void rt6_flush_exceptions(struct fib6_info *f6i)
1935 struct fib6_info *from;
2010 struct fib6_info *from;
2206 void rt6_age_exceptions(struct fib6_info *f6i,
2746 static bool fib6_check(struct fib6_info *f6i, u32 cookie)
2760 struct fib6_info *from,
2776 struct fib6_info *from,
2790 struct fib6_info *from;
2851 struct fib6_info *from;
2868 struct fib6_info *from;
2953 /* fib6_info uses a nexthop that does not have fib6_nh
3109 struct fib6_info *rt;
3283 struct fib6_info *f6i = res->f6i;
3785 static struct fib6_info *ip6_route_info_create(struct fib6_config *cfg,
3791 struct fib6_info *rt;
3852 static int ip6_route_info_create_nh(struct fib6_info *rt,
3931 struct fib6_info *rt;
3952 static int __ip6_del_rt(struct fib6_info *rt, struct nl_info *info)
3973 int ip6_del_rt(struct net *net, struct fib6_info *rt, bool skip_notify)
3983 static int __ip6_del_rt_siblings(struct fib6_info *rt, struct fib6_config *cfg)
3997 struct fib6_info *sibling, *next_sibling;
4023 struct fib6_info *last_sibling, *replace_rt;
4026 struct fib6_info,
4078 static int ip6_del_cached_rt(struct fib6_config *cfg, struct fib6_info *rt,
4096 struct fib6_info *f6i;
4108 static int ip6_del_cached_rt_nh(struct fib6_config *cfg, struct fib6_info *f6i)
4122 struct fib6_info *rt;
4309 /* fib6_info uses a nexthop that does not have fib6_nh
4349 static struct fib6_info *rt6_get_route_info(struct net *net,
4357 struct fib6_info *rt = NULL;
4389 static struct fib6_info *rt6_add_route_info(struct net *net,
4422 struct fib6_info *rt6_get_dflt_router(struct net *net,
4427 struct fib6_info *rt;
4454 struct fib6_info *rt6_add_dflt_router(struct net *net,
4491 struct fib6_info *rt;
4651 struct fib6_info *addrconf_f6i_alloc(struct net *net,
4667 struct fib6_info *f6i;
4702 static int fib6_remove_prefsrc(struct fib6_info *rt, void *arg)
4732 static int fib6_clean_tohost(struct fib6_info *rt, void *arg)
4768 static struct fib6_info *rt6_multipath_first_sibling(const struct fib6_info *rt)
4770 struct fib6_info *iter;
4789 static bool rt6_is_dead(const struct fib6_info *rt)
4799 static int rt6_multipath_total_weight(const struct fib6_info *rt)
4801 struct fib6_info *iter;
4815 static void rt6_upper_bound_set(struct fib6_info *rt, int *weight, int total)
4827 static void rt6_multipath_upper_bound_set(struct fib6_info *rt, int total)
4829 struct fib6_info *iter;
4838 void rt6_multipath_rebalance(struct fib6_info *rt)
4840 struct fib6_info *first;
4862 static int fib6_ifup(struct fib6_info *rt, void *p_arg)
4893 static bool rt6_multipath_uses_dev(const struct fib6_info *rt,
4896 struct fib6_info *iter;
4907 static void rt6_multipath_flush(struct fib6_info *rt)
4909 struct fib6_info *iter;
4916 static unsigned int rt6_multipath_dead_count(const struct fib6_info *rt,
4919 struct fib6_info *iter;
4933 static void rt6_multipath_nh_flags_set(struct fib6_info *rt,
4937 struct fib6_info *iter;
4947 static int fib6_ifdown(struct fib6_info *rt, void *p_arg)
5016 struct fib6_info *f6i;
5022 struct fib6_info *f6i = arg->f6i;
5045 static int rt6_mtu_change_route(struct fib6_info *f6i, void *p_arg)
5307 struct fib6_info *fib6_info;
5313 struct fib6_info *rt,
5319 /* check if fib6_info already exists */
5320 if (rt6_duplicate_nexthop(nh->fib6_info, rt))
5328 nh->fib6_info = rt;
5335 static void ip6_route_mpath_notify(struct fib6_info *rt,
5336 struct fib6_info *rt_last,
5351 struct fib6_info,
5361 static bool ip6_route_mpath_should_notify(const struct fib6_info *rt)
5365 struct fib6_info *leaf;
5390 struct fib6_info *rt_notif = NULL, *rt_last = NULL;
5397 struct fib6_info *rt;
5420 * fib6_info structs per nexthop
5481 err = __ip6_ins_rt(nh->fib6_info, info, extack);
5491 rt_last = nh->fib6_info;
5495 rt_notif = nh->fib6_info;
5556 fib6_info_release(nh->fib6_info);
5671 static size_t rt6_nlmsg_size(struct fib6_info *f6i)
5673 struct fib6_info *sibling;
5747 struct fib6_info *rt, struct dst_entry *dst,
5862 struct fib6_info *sibling;
5949 static bool fib6_info_uses_dev(const struct fib6_info *f6i,
5964 const struct fib6_info *sibling;
5983 struct fib6_info *rt;
6041 int rt6_dump_route(struct fib6_info *rt, void *p_arg, unsigned int skip)
6189 struct fib6_info *from;
6330 void inet6_rt_notify(int event, struct fib6_info *rt, struct nl_info *info,
6371 void fib6_rt_update(struct net *net, struct fib6_info *rt,
6397 void fib6_info_hw_flags_set(struct net *net, struct fib6_info *f6i,
6820 DEFINE_BPF_ITER_FUNC(ipv6_route, struct bpf_iter_meta *meta, struct fib6_info *rt)
6822 BTF_ID_LIST_SINGLE(btf_fib6_info_id, struct, fib6_info)