| /linux/net/core/ |
| H A D | dst.c | 171 struct metadata_dst *md_dst = (struct metadata_dst *)dst; in dst_release() local 173 if (md_dst->type == METADATA_IP_TUNNEL) in dst_release() 174 dst_cache_reset_now(&md_dst->u.tun_info.dst_cache); in dst_release() 281 static void __metadata_dst_init(struct metadata_dst *md_dst, in __metadata_dst_init() argument 286 dst = &md_dst->dst; in __metadata_dst_init() 289 memset(dst + 1, 0, sizeof(*md_dst) + optslen - sizeof(*dst)); in __metadata_dst_init() 290 md_dst->type = type; in __metadata_dst_init() 296 struct metadata_dst *md_dst; in metadata_dst_alloc() local 298 md_dst = kmalloc_flex(*md_dst, u.tun_info.options, optslen, flags); in metadata_dst_alloc() 299 if (!md_dst) in metadata_dst_alloc() [all …]
|
| H A D | flow_dissector.c | 1085 struct metadata_dst *md_dst = skb_metadata_dst(skb); in __skb_flow_dissect() local 1092 (!md_dst || md_dst->type != METADATA_HW_PORT_MUX)) { in __skb_flow_dissect()
|
| H A D | filter.c | 4834 static struct metadata_dst __percpu *md_dst; variable 4839 struct metadata_dst *md = this_cpu_ptr(md_dst); in BPF_CALL_4() 4921 const struct metadata_dst *md = this_cpu_ptr(md_dst); in BPF_CALL_3() 4947 if (!md_dst) { in bpf_get_skb_set_tunnel_proto() 4955 if (cmpxchg(&md_dst, NULL, tmp)) in bpf_get_skb_set_tunnel_proto()
|
| /linux/include/net/ |
| H A D | dst_metadata.h | 46 struct metadata_dst *md_dst = (struct metadata_dst *) skb_dst(skb); in skb_metadata_dst() local 48 if (md_dst && md_dst->dst.flags & DST_METADATA) in skb_metadata_dst() 49 return md_dst; in skb_metadata_dst() 57 struct metadata_dst *md_dst = skb_metadata_dst(skb); in skb_tunnel_info() local 60 if (md_dst && md_dst->type == METADATA_IP_TUNNEL) in skb_tunnel_info() 61 return &md_dst->u.tun_info; in skb_tunnel_info() 79 struct metadata_dst *md_dst = skb_metadata_dst(skb); in skb_xfrm_md_info() local 82 if (md_dst && md_dst->type == METADATA_XFRM) in skb_xfrm_md_info() 83 return &md_dst->u.xfrm_info; in skb_xfrm_md_info() 136 void metadata_dst_free_percpu(struct metadata_dst __percpu *md_dst); [all …]
|
| /linux/net/xfrm/ |
| H A D | xfrm_interface_bpf.c | 65 struct metadata_dst *md_dst; in bpf_skb_set_xfrm_info() local 80 md_dst = this_cpu_ptr(xfrm_bpf_md_dst); in bpf_skb_set_xfrm_info() 82 info = &md_dst->u.xfrm_info; in bpf_skb_set_xfrm_info() 89 dst_hold((struct dst_entry *)md_dst); in bpf_skb_set_xfrm_info() 90 skb_dst_set(skb, (struct dst_entry *)md_dst); in bpf_skb_set_xfrm_info()
|
| H A D | xfrm_interface_core.c | 408 struct metadata_dst *md_dst; in xfrmi_rcv_cb() local 410 md_dst = metadata_dst_alloc(0, METADATA_XFRM, GFP_ATOMIC); in xfrmi_rcv_cb() 411 if (!md_dst) in xfrmi_rcv_cb() 414 md_dst->u.xfrm_info.if_id = x->if_id; in xfrmi_rcv_cb() 415 md_dst->u.xfrm_info.link = link; in xfrmi_rcv_cb() 416 skb_dst_set(skb, (struct dst_entry *)md_dst); in xfrmi_rcv_cb()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ |
| H A D | macsec.h | 27 struct metadata_dst *md_dst = skb_metadata_dst(skb); in mlx5e_macsec_skb_is_offload() local 29 return md_dst && (md_dst->type == METADATA_MACSEC); in mlx5e_macsec_skb_is_offload()
|
| H A D | macsec.c | 86 struct metadata_dst *md_dst; member 727 rx_sc->md_dst = metadata_dst_alloc(0, METADATA_MACSEC, GFP_KERNEL); in mlx5e_macsec_add_rxsc() 728 if (!rx_sc->md_dst) { in mlx5e_macsec_add_rxsc() 738 rx_sc->md_dst->u.macsec_info.sci = rx_sc->sci; in mlx5e_macsec_add_rxsc() 832 metadata_dst_free(rx_sc->md_dst); in macsec_del_rxsc_ctx() 1649 struct metadata_dst *md_dst = skb_metadata_dst(skb); in mlx5e_macsec_handle_tx_skb() local 1653 &md_dst->u.macsec_info.sci); in mlx5e_macsec_handle_tx_skb() 1668 struct metadata_dst *md_dst = skb_metadata_dst(skb); in mlx5e_macsec_tx_build_eseg() local 1672 &md_dst->u.macsec_info.sci); in mlx5e_macsec_tx_build_eseg() 1700 dst_hold(&rx_sc->md_dst->dst); in mlx5e_macsec_offload_handle_rx_skb() [all …]
|
| /linux/net/dsa/ |
| H A D | tag.c | 57 struct metadata_dst *md_dst = skb_metadata_dst(skb); in dsa_switch_rcv() local 71 if (md_dst && md_dst->type == METADATA_HW_PORT_MUX) { in dsa_switch_rcv() 72 unsigned int port = md_dst->u.port_info.port_id; in dsa_switch_rcv()
|
| /linux/drivers/net/ |
| H A D | macsec.c | 1011 struct metadata_dst *md_dst; in handle_not_macsec() local 1018 md_dst = skb_metadata_dst(skb); in handle_not_macsec() 1019 is_macsec_md_dst = md_dst && md_dst->type == METADATA_MACSEC; in handle_not_macsec() 1046 md_dst->u.macsec_info.sci); in handle_not_macsec() 3435 struct metadata_dst *md_dst = secy->tx_sc.md_dst; in macsec_start_xmit() local 3438 dst_hold(&md_dst->dst); in macsec_start_xmit() 3439 skb_dst_set(skb, &md_dst->dst); in macsec_start_xmit() 3783 dst_release(&macsec->secy.tx_sc.md_dst->dst); in macsec_free_netdev() 4065 secy->tx_sc.md_dst = metadata_dst_alloc(0, METADATA_MACSEC, GFP_KERNEL); in macsec_add_dev() 4066 if (!secy->tx_sc.md_dst) in macsec_add_dev() [all …]
|
| /linux/drivers/net/ethernet/airoha/ |
| H A D | airoha_eth.c | 2817 struct metadata_dst *md_dst; in airoha_metadata_dst_alloc() local 2819 md_dst = metadata_dst_alloc(0, METADATA_HW_PORT_MUX, in airoha_metadata_dst_alloc() 2821 if (!md_dst) in airoha_metadata_dst_alloc() 2824 md_dst->u.port_info.port_id = i; in airoha_metadata_dst_alloc() 2825 port->dsa_meta[i] = md_dst; in airoha_metadata_dst_alloc()
|
| /linux/drivers/net/ethernet/mediatek/ |
| H A D | mtk_eth_soc.c | 3638 struct metadata_dst *md_dst = eth->dsa_meta[i]; in mtk_open() local 3640 if (md_dst) in mtk_open() 3643 md_dst = metadata_dst_alloc(0, METADATA_HW_PORT_MUX, in mtk_open() 3645 if (!md_dst) in mtk_open() 3648 md_dst->u.port_info.port_id = i; in mtk_open() 3649 eth->dsa_meta[i] = md_dst; in mtk_open()
|
| /linux/drivers/net/ethernet/broadcom/bnxt/ |
| H A D | bnxt.c | 452 struct metadata_dst *md_dst = skb_metadata_dst(skb); in bnxt_xmit_get_cfa_action() local 454 if (!md_dst || md_dst->type != METADATA_HW_PORT_MUX) in bnxt_xmit_get_cfa_action() 457 return md_dst->u.port_info.port_id; in bnxt_xmit_get_cfa_action()
|