/Linux-v4.19/net/core/ |
D | dst_cache.c | 31 static void dst_cache_per_cpu_dst_set(struct dst_cache_pcpu *dst_cache, in dst_cache_per_cpu_dst_set() argument 34 dst_release(dst_cache->dst); in dst_cache_per_cpu_dst_set() 38 dst_cache->cookie = cookie; in dst_cache_per_cpu_dst_set() 39 dst_cache->dst = dst; in dst_cache_per_cpu_dst_set() 42 static struct dst_entry *dst_cache_per_cpu_get(struct dst_cache *dst_cache, in dst_cache_per_cpu_get() argument 54 if (unlikely(!time_after(idst->refresh_ts, dst_cache->reset_ts) || in dst_cache_per_cpu_get() 67 struct dst_entry *dst_cache_get(struct dst_cache *dst_cache) in dst_cache_get() argument 69 if (!dst_cache->cache) in dst_cache_get() 72 return dst_cache_per_cpu_get(dst_cache, this_cpu_ptr(dst_cache->cache)); in dst_cache_get() 76 struct rtable *dst_cache_get_ip4(struct dst_cache *dst_cache, __be32 *saddr) in dst_cache_get_ip4() argument [all …]
|
D | Makefile | 30 obj-$(CONFIG_DST_CACHE) += dst_cache.o
|
D | dst.c | 306 dst_cache_destroy(&md_dst->u.tun_info.dst_cache); in metadata_dst_free() 339 dst_cache_destroy(&one_md_dst->u.tun_info.dst_cache); in metadata_dst_free_percpu()
|
/Linux-v4.19/include/net/ |
D | dst_cache.h | 11 struct dst_cache { struct 24 struct dst_entry *dst_cache_get(struct dst_cache *dst_cache); 33 struct rtable *dst_cache_get_ip4(struct dst_cache *dst_cache, __be32 *saddr); 43 void dst_cache_set_ip4(struct dst_cache *dst_cache, struct dst_entry *dst, 56 void dst_cache_set_ip6(struct dst_cache *dst_cache, struct dst_entry *dst, 66 struct dst_entry *dst_cache_get_ip6(struct dst_cache *dst_cache, 77 static inline void dst_cache_reset(struct dst_cache *dst_cache) in dst_cache_reset() argument 79 dst_cache->reset_ts = jiffies; in dst_cache_reset() 87 int dst_cache_init(struct dst_cache *dst_cache, gfp_t gfp); 96 void dst_cache_destroy(struct dst_cache *dst_cache);
|
D | ip6_tunnel.h | 52 struct dst_cache dst_cache; /* cached dst */ member
|
D | ip_tunnels.h | 72 struct dst_cache dst_cache; member 125 struct dst_cache dst_cache; member
|
D | vxlan.h | 198 struct dst_cache dst_cache; member
|
D | ip_vs.h | 646 struct dst_entry *dst_cache; /* destination cache entry */ member
|
/Linux-v4.19/net/ipv6/ila/ |
D | ila_lwt.c | 21 struct dst_cache dst_cache; member 61 dst = dst_cache_get(&ilwt->dst_cache); in ila_output() 90 dst_cache_set_ip6(&ilwt->dst_cache, dst, &fl6.saddr); in ila_output() 223 ret = dst_cache_init(&ilwt->dst_cache, GFP_ATOMIC); in ila_build_state() 258 dst_cache_destroy(&ila_lwt_lwtunnel(lwt)->dst_cache); in ila_destroy_state()
|
/Linux-v4.19/drivers/net/ |
D | geneve.c | 326 err = dst_cache_init(&geneve->info.dst_cache, GFP_KERNEL); in geneve_init() 339 dst_cache_destroy(&geneve->info.dst_cache); in geneve_uninit() 723 struct dst_cache *dst_cache; in geneve_get_v4_rt() local 743 dst_cache = (struct dst_cache *)&info->dst_cache; in geneve_get_v4_rt() 745 rt = dst_cache_get_ip4(dst_cache, &fl4->saddr); in geneve_get_v4_rt() 760 dst_cache_set_ip4(dst_cache, &rt->dst, fl4->saddr); in geneve_get_v4_rt() 774 struct dst_cache *dst_cache; in geneve_get_v6_dst() local 793 dst_cache = (struct dst_cache *)&info->dst_cache; in geneve_get_v6_dst() 795 dst = dst_cache_get_ip6(dst_cache, &fl6->saddr); in geneve_get_v6_dst() 810 dst_cache_set_ip6(dst_cache, dst, &fl6->saddr); in geneve_get_v6_dst() [all …]
|
D | vxlan.c | 506 dst_cache_reset(&rd->dst_cache); in vxlan_fdb_replace() 529 if (dst_cache_init(&rd->dst_cache, GFP_ATOMIC)) { in vxlan_fdb_append() 772 dst_cache_destroy(&rd->dst_cache); in vxlan_fdb_free() 796 dst_cache_destroy(&rd->dst_cache); in vxlan_dst_free() 1894 struct dst_cache *dst_cache, in vxlan_get_route() argument 1907 rt = dst_cache_get_ip4(dst_cache, saddr); in vxlan_get_route() 1932 dst_cache_set_ip4(dst_cache, &rt->dst, fl4.saddr); in vxlan_get_route() 1949 struct dst_cache *dst_cache, in vxlan6_get_route() argument 1963 ndst = dst_cache_get_ip6(dst_cache, saddr); in vxlan6_get_route() 1994 dst_cache_set_ip6(dst_cache, ndst, saddr); in vxlan6_get_route() [all …]
|
/Linux-v4.19/net/ipv4/ |
D | ip_tunnel.c | 323 dst_cache_reset(&tunnel->dst_cache); in ip_tunnel_bind_dev() 722 rt = connected ? dst_cache_get_ip4(&tunnel->dst_cache, &fl4.saddr) : in ip_tunnel_xmit() 733 dst_cache_set_ip4(&tunnel->dst_cache, &rt->dst, in ip_tunnel_xmit() 832 dst_cache_reset(&t->dst_cache); in ip_tunnel_update() 970 dst_cache_destroy(&tunnel->dst_cache); in ip_tunnel_dev_free() 1189 err = dst_cache_init(&tunnel->dst_cache, GFP_KERNEL); in ip_tunnel_init() 1197 dst_cache_destroy(&tunnel->dst_cache); in ip_tunnel_init() 1227 dst_cache_reset(&tunnel->dst_cache); in ip_tunnel_uninit()
|
D | ip_gre.c | 496 rt = dst_cache_get_ip4(&tun_info->dst_cache, &fl->saddr); in prepare_fb_xmit() 502 dst_cache_set_ip4(&tun_info->dst_cache, &rt->dst, in prepare_fb_xmit()
|
/Linux-v4.19/net/netfilter/ |
D | nf_flow_table_core.c | 55 ft->dst_cache = dst; in flow_offload_fill_dir() 141 dst_release(flow->tuplehash[FLOW_OFFLOAD_DIR_ORIGINAL].tuple.dst_cache); in flow_offload_free() 142 dst_release(flow->tuplehash[FLOW_OFFLOAD_DIR_REPLY].tuple.dst_cache); in flow_offload_free()
|
D | nf_flow_table_ip.c | 244 rt = (struct rtable *)flow->tuplehash[dir].tuple.dst_cache; in nf_flow_offload_ip_hook() 462 rt = (struct rt6_info *)flow->tuplehash[dir].tuple.dst_cache; in nf_flow_offload_ipv6_hook()
|
/Linux-v4.19/include/net/netfilter/ |
D | nf_flow_table.h | 60 struct dst_entry *dst_cache; member
|
/Linux-v4.19/net/ipv6/ |
D | ip6_gre.c | 410 dst_cache_reset(&t->dst_cache); in ip6erspan_tunnel_uninit() 421 dst_cache_reset(&t->dst_cache); in ip6gre_tunnel_uninit() 1184 dst_cache_reset(&t->dst_cache); in ip6gre_tnl_copy_tnl_parm() 1395 dst_cache_destroy(&t->dst_cache); in ip6gre_dev_free() 1461 ret = dst_cache_init(&tunnel->dst_cache, GFP_KERNEL); in ip6gre_tunnel_init_common() 1485 dst_cache_destroy(&tunnel->dst_cache); in ip6gre_tunnel_init_common() 1849 ret = dst_cache_init(&tunnel->dst_cache, GFP_KERNEL); in ip6erspan_tap_init() 1870 dst_cache_destroy(&tunnel->dst_cache); in ip6erspan_tap_init()
|
D | ip6_tunnel.c | 255 dst_cache_destroy(&t->dst_cache); in ip6_dev_free() 390 dst_cache_reset(&t->dst_cache); in ip6_tnl_dev_uninit() 1096 dst = dst_cache_get(&t->dst_cache); in ip6_tnl_xmit() 1183 dst_cache_set_ip6(&t->dst_cache, ndst, &fl6->saddr); in ip6_tnl_xmit() 1510 dst_cache_reset(&t->dst_cache); in ip6_tnl_change() 1846 ret = dst_cache_init(&t->dst_cache, GFP_KERNEL); in ip6_tnl_dev_init_gen() 1869 dst_cache_destroy(&t->dst_cache); in ip6_tnl_dev_init_gen()
|
D | sit.c | 486 dst_cache_reset(&tunnel->dst_cache); in ipip6_tunnel_uninit() 1109 dst_cache_reset(&t->dst_cache); in ipip6_tunnel_update() 1140 dst_cache_reset(&t->dst_cache); in ipip6_tunnel_update_6rd() 1302 dst_cache_reset(&t->dst_cache); in ipip6_tunnel_ioctl() 1351 dst_cache_destroy(&tunnel->dst_cache); in ipip6_dev_free() 1397 err = dst_cache_init(&tunnel->dst_cache, GFP_KERNEL); in ipip6_tunnel_init()
|
D | seg6_iptunnel.c | 36 struct dst_cache cache;
|
D | ip6_vti.c | 688 dst_cache_reset(&t->dst_cache); in vti6_tnl_change()
|
/Linux-v4.19/net/netfilter/ipvs/ |
D | ip_vs_xmit.c | 83 dest_dst->dst_cache = dst; in __ip_vs_dst_set() 100 dst = dest_dst->dst_cache; in __ip_vs_dst_check() 322 rt = (struct rtable *) dest_dst->dst_cache; in __ip_vs_get_out_rt() 473 rt = (struct rt6_info *) dest_dst->dst_cache; in __ip_vs_get_out_rt_v6()
|
D | ip_vs_ctl.c | 656 dst_release(dest_dst->dst_cache); in ip_vs_dest_dst_rcu_free() 1548 if (dest_dst && dest_dst->dst_cache->dev == dev) { in ip_vs_forget_dev()
|
D | ip_vs_core.c | 1700 mtu = dst_mtu(dest_dst->dst_cache); in ip_vs_in_icmp()
|
/Linux-v4.19/net/openvswitch/ |
D | flow_netlink.c | 2588 err = dst_cache_init(&tun_dst->u.tun_info.dst_cache, GFP_KERNEL); in validate_and_copy_set_tun()
|