Lines Matching defs:dst
396 struct dst_entry *dst)
402 skb_dst_set(skb, dst);
455 struct dst_entry *dst;
456 struct dst_entry *dst_null = &net->ipv6.ip6_null_entry->dst;
473 dst = ip6_dst_lookup_flow(net, NULL, &fl6, NULL);
474 if (IS_ERR(dst) || dst == dst_null)
479 /* if dst.dev is the VRF device again this is locally originated traffic
482 if (dst->dev == dev)
483 return vrf_local_xmit(skb, dev, dst);
485 skb_dst_set(skb, dst);
511 /* based on ip_local_out; can't use it b/c the dst is switched pointing to us */
557 /* if dst.dev is the VRF device again this is locally originated traffic
560 if (rt->dst.dev == vrf_dev)
561 return vrf_local_xmit(skb, vrf_dev, &rt->dst);
563 skb_dst_set(skb, &rt->dst);
644 struct dst_entry *dst = skb_dst(skb);
645 struct net_device *dev = dst->dev;
656 nexthop = rt6_nexthop((struct rt6_info *)dst, &ipv6_hdr(skb)->daddr);
657 neigh = __ipv6_neigh_lookup_noref(dst->dev, nexthop);
659 neigh = __neigh_create(&nd_tbl, nexthop, dst->dev, false);
668 IP6_INC_STATS(dev_net(dst->dev),
669 ip6_dst_idev(dst), IPSTATS_MIB_OUTNOROUTES);
683 /* set dst on skb to send packet to us via dev_xmit path. Allows
691 struct dst_entry *dst = NULL;
698 dst = &rt6->dst;
699 dst_hold(dst);
704 if (unlikely(!dst)) {
710 skb_dst_set(skb, dst);
795 struct dst_entry *dst;
800 /* move dev in dst's to loopback so this VRF device can be deleted
804 dst = &rt6->dst;
805 netdev_ref_replace(dst->dev, net->loopback_dev,
806 &dst->dev_tracker, GFP_KERNEL);
807 dst->dev = net->loopback_dev;
808 dst_release(dst);
828 /* create a dst for routing packets out a VRF device */
833 rt6->dst.output = vrf_output6;
862 struct dst_entry *dst = skb_dst(skb);
863 struct rtable *rt = (struct rtable *)dst;
864 struct net_device *dev = dst->dev;
913 /* set dst on skb to send packet to us via dev_xmit path. Allows
921 struct dst_entry *dst = NULL;
928 dst = &rth->dst;
929 dst_hold(dst);
934 if (unlikely(!dst)) {
940 skb_dst_set(skb, dst);
1042 struct dst_entry *dst;
1047 /* move dev in dst's to loopback so this VRF device can be deleted
1051 dst = &rth->dst;
1052 netdev_ref_replace(dst->dev, net->loopback_dev,
1053 &dst->dev_tracker, GFP_KERNEL);
1054 dst->dev = net->loopback_dev;
1055 dst_release(dst);
1067 /* create a dst for routing packets out through a VRF device */
1072 rth->dst.output = vrf_output;
1173 /* create the default dst which points back to us */
1351 if (unlikely(&rt6->dst == &net->ipv6.ip6_null_entry->dst))
1354 skb_dst_set(skb, &rt6->dst);
1366 * For non-loopback strict packets, determine the dst using the original
1480 * is taken on the dst by this function.
1487 struct dst_entry *dst = NULL;
1495 dst = &net->ipv6.ip6_null_entry->dst;
1496 return dst;
1504 dst = &rt->dst;
1506 return dst;