Lines Matching refs:dst
3 * net/core/dst_cache.c - dst entry cache
19 struct dst_entry *dst;
28 struct dst_entry *dst, u32 cookie)
30 dst_release(dst_cache->dst);
31 if (dst)
32 dst_hold(dst);
35 dst_cache->dst = dst;
41 struct dst_entry *dst;
43 dst = idst->dst;
44 if (!dst)
47 /* the cache already hold a dst reference; it can't go away */
48 dst_hold(dst);
51 (dst->obsolete && !dst->ops->check(dst, idst->cookie)))) {
53 dst_release(dst);
56 return dst;
75 struct dst_entry *dst;
81 dst = dst_cache_per_cpu_get(dst_cache, idst);
82 if (!dst)
86 return container_of(dst, struct rtable, dst);
90 void dst_cache_set_ip4(struct dst_cache *dst_cache, struct dst_entry *dst,
99 dst_cache_per_cpu_dst_set(idst, dst, 0);
105 void dst_cache_set_ip6(struct dst_cache *dst_cache, struct dst_entry *dst,
114 dst_cache_per_cpu_dst_set(this_cpu_ptr(dst_cache->cache), dst,
115 rt6_get_cookie((struct rt6_info *)dst));
124 struct dst_entry *dst;
130 dst = dst_cache_per_cpu_get(dst_cache, idst);
131 if (!dst)
135 return dst;
160 dst_release(per_cpu_ptr(dst_cache->cache, i)->dst);
176 struct dst_entry *dst = idst->dst;
179 idst->dst = NULL;
180 dst_release(dst);