rth 45 drivers/net/vrf.c struct rtable __rcu *rth; rth 623 drivers/net/vrf.c struct rtable *rth; rth 627 drivers/net/vrf.c rth = rcu_dereference(vrf->rth); rth 628 drivers/net/vrf.c if (likely(rth)) { rth 629 drivers/net/vrf.c dst = &rth->dst; rth 716 drivers/net/vrf.c struct rtable *rth = rtnl_dereference(vrf->rth); rth 720 drivers/net/vrf.c RCU_INIT_POINTER(vrf->rth, NULL); rth 726 drivers/net/vrf.c if (rth) { rth 727 drivers/net/vrf.c dst = &rth->dst; rth 738 drivers/net/vrf.c struct rtable *rth; rth 744 drivers/net/vrf.c rth = rt_dst_alloc(dev, 0, RTN_UNICAST, 1, 1, 0); rth 745 drivers/net/vrf.c if (!rth) rth 748 drivers/net/vrf.c rth->dst.output = vrf_output; rth 750 drivers/net/vrf.c rcu_assign_pointer(vrf->rth, rth); rth 804 net/core/net_namespace.c struct rtgenmsg *rth; rth 806 net/core/net_namespace.c nlh = nlmsg_put(skb, args->portid, args->seq, args->cmd, sizeof(*rth), rth 811 net/core/net_namespace.c rth = nlmsg_data(nlh); rth 812 net/core/net_namespace.c rth->rtgen_family = AF_UNSPEC; rth 319 net/decnet/dn_route.c struct dn_route *rth; rth 326 net/decnet/dn_route.c while ((rth = rcu_dereference_protected(*rthp, rth 328 net/decnet/dn_route.c if (compare_keys(&rth->fld, &rt->fld)) { rth 330 net/decnet/dn_route.c *rthp = rth->dn_next; rth 331 net/decnet/dn_route.c rcu_assign_pointer(rth->dn_next, rth 333 net/decnet/dn_route.c rcu_assign_pointer(dn_rt_hash_table[hash].chain, rth); rth 335 net/decnet/dn_route.c dst_hold_and_use(&rth->dst, now); rth 339 net/decnet/dn_route.c *rp = rth; rth 342 net/decnet/dn_route.c rthp = &rth->dn_next; rth 421 net/ipv4/route.c static inline bool rt_is_expired(const struct rtable *rth) rth 423 net/ipv4/route.c return rth->rt_genid != rt_genid_ipv4(dev_net(rth->dst.dev)); rth 1722 net/ipv4/route.c struct rtable *rth; rth 1733 net/ipv4/route.c rth = rt_dst_alloc(dev_net(dev)->loopback_dev, flags, RTN_MULTICAST, rth 1735 net/ipv4/route.c if (!rth) rth 1739 net/ipv4/route.c rth->dst.tclassid = itag; rth 1741 net/ipv4/route.c rth->dst.output = ip_rt_bug; rth 1742 net/ipv4/route.c rth->rt_is_input= 1; rth 1746 net/ipv4/route.c rth->dst.input = ip_mr_input; rth 1750 net/ipv4/route.c skb_dst_set(skb, &rth->dst); rth 1789 net/ipv4/route.c struct rtable *rth; rth 1840 net/ipv4/route.c rth = rcu_dereference(fnhe->fnhe_rth_input); rth 1842 net/ipv4/route.c rth = rcu_dereference(nhc->nhc_rth_input); rth 1843 net/ipv4/route.c if (rt_cache_valid(rth)) { rth 1844 net/ipv4/route.c skb_dst_set_noref(skb, &rth->dst); rth 1849 net/ipv4/route.c rth = rt_dst_alloc(out_dev->dev, 0, res->type, rth 1852 net/ipv4/route.c if (!rth) { rth 1857 net/ipv4/route.c rth->rt_is_input = 1; rth 1860 net/ipv4/route.c rth->dst.input = ip_forward; rth 1862 net/ipv4/route.c rt_set_nexthop(rth, daddr, res, fnhe, res->fi, res->type, itag, rth 1864 net/ipv4/route.c lwtunnel_set_redirect(&rth->dst); rth 1865 net/ipv4/route.c skb_dst_set(skb, &rth->dst); rth 2047 net/ipv4/route.c struct rtable *rth; rth 2170 net/ipv4/route.c rth = rcu_dereference(nhc->nhc_rth_input); rth 2171 net/ipv4/route.c if (rt_cache_valid(rth)) { rth 2172 net/ipv4/route.c skb_dst_set_noref(skb, &rth->dst); rth 2178 net/ipv4/route.c rth = rt_dst_alloc(l3mdev_master_dev_rcu(dev) ? : net->loopback_dev, rth 2181 net/ipv4/route.c if (!rth) rth 2184 net/ipv4/route.c rth->dst.output= ip_rt_bug; rth 2186 net/ipv4/route.c rth->dst.tclassid = itag; rth 2188 net/ipv4/route.c rth->rt_is_input = 1; rth 2192 net/ipv4/route.c rth->dst.input= ip_error; rth 2193 net/ipv4/route.c rth->dst.error= -err; rth 2194 net/ipv4/route.c rth->rt_flags &= ~RTCF_LOCAL; rth 2200 net/ipv4/route.c rth->dst.lwtstate = lwtstate_get(nhc->nhc_lwtstate); rth 2201 net/ipv4/route.c if (lwtunnel_input_redirect(rth->dst.lwtstate)) { rth 2202 net/ipv4/route.c WARN_ON(rth->dst.input == lwtunnel_input); rth 2203 net/ipv4/route.c rth->dst.lwtstate->orig_input = rth->dst.input; rth 2204 net/ipv4/route.c rth->dst.input = lwtunnel_input; rth 2207 net/ipv4/route.c if (unlikely(!rt_cache_route(nhc, rth))) rth 2208 net/ipv4/route.c rt_add_uncached_list(rth); rth 2210 net/ipv4/route.c skb_dst_set(skb, &rth->dst); rth 2321 net/ipv4/route.c struct rtable *rth; rth 2396 net/ipv4/route.c rth = rcu_dereference(*prth); rth 2397 net/ipv4/route.c if (rt_cache_valid(rth) && dst_hold_safe(&rth->dst)) rth 2398 net/ipv4/route.c return rth; rth 2402 net/ipv4/route.c rth = rt_dst_alloc(dev_out, flags, type, rth 2406 net/ipv4/route.c if (!rth) rth 2409 net/ipv4/route.c rth->rt_iif = orig_oif; rth 2416 net/ipv4/route.c rth->dst.output = ip_mc_output; rth 2423 net/ipv4/route.c rth->dst.input = ip_mr_input; rth 2424 net/ipv4/route.c rth->dst.output = ip_mc_output; rth 2430 net/ipv4/route.c rt_set_nexthop(rth, fl4->daddr, res, fnhe, fi, type, 0, do_cache); rth 2431 net/ipv4/route.c lwtunnel_set_redirect(&rth->dst); rth 2433 net/ipv4/route.c return rth; rth 2450 net/ipv4/route.c struct rtable *rth; rth 2458 net/ipv4/route.c rth = ip_route_output_key_hash_rcu(net, fl4, &res, skb); rth 2461 net/ipv4/route.c return rth; rth 2472 net/ipv4/route.c struct rtable *rth; rth 2479 net/ipv4/route.c rth = ERR_PTR(-EINVAL); rth 2483 net/ipv4/route.c rth = ERR_PTR(-ENETUNREACH); rth 2530 net/ipv4/route.c rth = ERR_PTR(-ENODEV); rth 2536 net/ipv4/route.c rth = ERR_PTR(-ENETUNREACH); rth 2599 net/ipv4/route.c rth = ERR_PTR(err); rth 2632 net/ipv4/route.c rth = __mkroute_output(res, fl4, orig_oif, dev_out, flags); rth 2635 net/ipv4/route.c return rth; rth 249 net/ipv6/ah6.c struct ipv6_rt_hdr *rth; rth 273 net/ipv6/ah6.c ipv6_rearrange_rthdr(iph, exthdr.rth);