Lines Matching refs:arg
495 struct fib6_nh_dm_arg *arg = _arg; in __rt6_nh_dev_match() local
497 arg->nh = nh; in __rt6_nh_dev_match()
498 return __rt6_device_match(arg->net, nh, arg->saddr, arg->oif, in __rt6_nh_dev_match()
499 arg->flags); in __rt6_nh_dev_match()
508 struct fib6_nh_dm_arg arg = { in rt6_nh_dev_match() local
518 if (nexthop_for_each_fib6_nh(nh, __rt6_nh_dev_match, &arg)) in rt6_nh_dev_match()
519 return arg.nh; in rt6_nh_dev_match()
775 struct fib6_nh_frl_arg *arg = _arg; in rt6_nh_find_match() local
777 arg->nh = nh; in rt6_nh_find_match()
778 return find_match(nh, arg->flags, arg->oif, arg->strict, in rt6_nh_find_match()
779 arg->mpri, arg->do_rr); in rt6_nh_find_match()
804 struct fib6_nh_frl_arg arg = { in __find_rr_leaf() local
820 &arg)) { in __find_rr_leaf()
822 nh = arg.nh; in __find_rr_leaf()
1764 static int rt6_nh_flush_exceptions(struct fib6_nh *nh, void *arg) in rt6_nh_flush_exceptions() argument
1766 struct fib6_info *f6i = arg; in rt6_nh_flush_exceptions()
1873 struct fib6_nh_excptn_arg *arg = _arg; in rt6_nh_remove_exception_rt() local
1876 err = fib6_nh_remove_exception(nh, arg->plen, arg->rt); in rt6_nh_remove_exception_rt()
1892 struct fib6_nh_excptn_arg arg = { in rt6_remove_exception_rt() local
1901 &arg); in rt6_remove_exception_rt()
1944 struct fib6_nh_match_arg *arg = _arg; in fib6_nh_find_match() local
1946 if (arg->dev != nh->fib_nh_dev || in fib6_nh_find_match()
1947 (arg->gw && !nh->fib_nh_gw_family) || in fib6_nh_find_match()
1948 (!arg->gw && nh->fib_nh_gw_family) || in fib6_nh_find_match()
1949 (arg->gw && !ipv6_addr_equal(arg->gw, &nh->fib_nh_gw6))) in fib6_nh_find_match()
1952 arg->match = nh; in fib6_nh_find_match()
1970 struct fib6_nh_match_arg arg = { in rt6_update_exception_stamp_rt() local
1975 nexthop_for_each_fib6_nh(from->nh, fib6_nh_find_match, &arg); in rt6_update_exception_stamp_rt()
1977 if (!arg.match) in rt6_update_exception_stamp_rt()
1979 fib6_nh = arg.match; in rt6_update_exception_stamp_rt()
2149 struct fib6_nh_age_excptn_arg *arg = _arg; in rt6_nh_age_exceptions() local
2151 fib6_nh_age_exceptions(nh, arg->gc_args, arg->now); in rt6_nh_age_exceptions()
2160 struct fib6_nh_age_excptn_arg arg = { in rt6_age_exceptions() local
2166 &arg); in rt6_age_exceptions()
2892 struct fib6_nh_match_arg arg = { in __ip6_rt_update_pmtu() local
2898 fib6_nh_find_match, &arg); in __ip6_rt_update_pmtu()
2903 if (!arg.match) in __ip6_rt_update_pmtu()
2906 res.nh = arg.match; in __ip6_rt_update_pmtu()
3029 struct fib6_nh_rd_arg *arg = _arg; in fib6_nh_redirect_match() local
3031 arg->res->nh = nh; in fib6_nh_redirect_match()
3032 return ip6_redirect_nh_match(arg->res, arg->fl6, arg->gw, arg->ret); in fib6_nh_redirect_match()
3050 struct fib6_nh_rd_arg arg = { in __ip6_route_redirect() local
3090 &arg)) in __ip6_route_redirect()
4027 struct fib6_nh_del_cached_rt_arg *arg = _arg; in fib6_nh_del_cached_rt() local
4030 rc = ip6_del_cached_rt(arg->cfg, arg->f6i, nh); in fib6_nh_del_cached_rt()
4036 struct fib6_nh_del_cached_rt_arg arg = { in ip6_del_cached_rt_nh() local
4041 return nexthop_for_each_fib6_nh(f6i->nh, fib6_nh_del_cached_rt, &arg); in ip6_del_cached_rt_nh()
4226 struct fib6_nh_match_arg arg = { in rt6_do_redirect() local
4232 fib6_nh_find_match, &arg); in rt6_do_redirect()
4237 if (!arg.match) in rt6_do_redirect()
4239 res.nh = arg.match; in rt6_do_redirect()
4411 static int rt6_addrconf_purge(struct fib6_info *rt, void *arg) in rt6_addrconf_purge() argument
4589 static int fib6_remove_prefsrc(struct fib6_info *rt, void *arg) in fib6_remove_prefsrc() argument
4591 struct net_device *dev = ((struct arg_dev_net_ip *)arg)->dev; in fib6_remove_prefsrc()
4592 struct net *net = ((struct arg_dev_net_ip *)arg)->net; in fib6_remove_prefsrc()
4593 struct in6_addr *addr = ((struct arg_dev_net_ip *)arg)->addr; in fib6_remove_prefsrc()
4621 static int fib6_clean_tohost(struct fib6_info *rt, void *arg) in fib6_clean_tohost() argument
4623 struct in6_addr *gateway = (struct in6_addr *)arg; in fib6_clean_tohost()
4753 const struct arg_netdev_event *arg = p_arg; in fib6_ifup() local
4754 struct net *net = dev_net(arg->dev); in fib6_ifup()
4757 rt->fib6_nh->fib_nh_dev == arg->dev) { in fib6_ifup()
4758 rt->fib6_nh->fib_nh_flags &= ~arg->nh_flags; in fib6_ifup()
4768 struct arg_netdev_event arg = { in rt6_sync_up() local
4776 arg.nh_flags |= RTNH_F_LINKDOWN; in rt6_sync_up()
4778 fib6_clean_all(dev_net(dev), fib6_ifup, &arg); in rt6_sync_up()
4838 const struct arg_netdev_event *arg = p_arg; in fib6_ifdown() local
4839 const struct net_device *dev = arg->dev; in fib6_ifdown()
4845 switch (arg->event) { in fib6_ifdown()
4881 struct arg_netdev_event arg = { in rt6_sync_down_dev() local
4890 fib6_clean_all_skip_notify(net, fib6_ifdown, &arg); in rt6_sync_down_dev()
4892 fib6_clean_all(net, fib6_ifdown, &arg); in rt6_sync_down_dev()
4910 struct rt6_mtu_change_arg *arg = (struct rt6_mtu_change_arg *)_arg; in fib6_nh_mtu_change() local
4911 struct fib6_info *f6i = arg->f6i; in fib6_nh_mtu_change()
4918 if (nh->fib_nh_dev == arg->dev) { in fib6_nh_mtu_change()
4919 struct inet6_dev *idev = __in6_dev_get(arg->dev); in fib6_nh_mtu_change()
4922 if (mtu >= arg->mtu || in fib6_nh_mtu_change()
4923 (mtu < arg->mtu && mtu == idev->cnf.mtu6)) in fib6_nh_mtu_change()
4924 fib6_metric_set(f6i, RTAX_MTU, arg->mtu); in fib6_nh_mtu_change()
4927 rt6_exceptions_update_pmtu(idev, nh, arg->mtu); in fib6_nh_mtu_change()
4936 struct rt6_mtu_change_arg *arg = (struct rt6_mtu_change_arg *) p_arg; in rt6_mtu_change_route() local
4945 idev = __in6_dev_get(arg->dev); in rt6_mtu_change_route()
4952 arg->f6i = f6i; in rt6_mtu_change_route()
4956 arg); in rt6_mtu_change_route()
4959 return fib6_nh_mtu_change(f6i->fib6_nh, arg); in rt6_mtu_change_route()
4964 struct rt6_mtu_change_arg arg = { in rt6_mtu_change() local
4969 fib6_clean_all(dev_net(dev), rt6_mtu_change_route, &arg); in rt6_mtu_change()
5508 static int rt6_nh_nlmsg_size(struct fib6_nh *nh, void *arg) in rt6_nh_nlmsg_size() argument
5510 int *nexthop_len = arg; in rt6_nh_nlmsg_size()
5779 static int fib6_info_nh_uses_dev(struct fib6_nh *nh, void *arg) in fib6_info_nh_uses_dev() argument
5781 const struct net_device *dev = arg; in fib6_info_nh_uses_dev()
5824 static int rt6_nh_dump_exceptions(struct fib6_nh *nh, void *arg) in rt6_nh_dump_exceptions() argument
5826 struct fib6_nh_exception_dump_walker *w = arg; in rt6_nh_dump_exceptions()
5878 struct rt6_rtnl_dump_arg *arg = (struct rt6_rtnl_dump_arg *) p_arg; in rt6_dump_route() local
5879 struct fib_dump_filter *filter = &arg->filter; in rt6_dump_route()
5881 struct net *net = arg->net; in rt6_dump_route()
5908 if (rt6_fill_node(net, arg->skb, rt, NULL, NULL, NULL, in rt6_dump_route()
5910 NETLINK_CB(arg->cb->skb).portid, in rt6_dump_route()
5911 arg->cb->nlh->nlmsg_seq, flags)) { in rt6_dump_route()
5919 struct fib6_nh_exception_dump_walker w = { .dump = arg, in rt6_dump_route()