| /linux-6.15/net/core/ |
| H A D | dst.c | 285 dst = &md_dst->dst; in __metadata_dst_init() 289 md_dst->type = type; in __metadata_dst_init() 295 struct metadata_dst *md_dst; in metadata_dst_alloc() local 297 md_dst = kmalloc(struct_size(md_dst, u.tun_info.options, optslen), in metadata_dst_alloc() 299 if (!md_dst) in metadata_dst_alloc() 304 return md_dst; in metadata_dst_alloc() 316 kfree(md_dst); in metadata_dst_free() 326 md_dst = __alloc_percpu_gfp(struct_size(md_dst, u.tun_info.options, in metadata_dst_alloc_percpu() 329 if (!md_dst) in metadata_dst_alloc_percpu() 335 return md_dst; in metadata_dst_alloc_percpu() [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 | 4794 static struct metadata_dst __percpu *md_dst; variable 4799 struct metadata_dst *md = this_cpu_ptr(md_dst); in BPF_CALL_4() 4881 const struct metadata_dst *md = this_cpu_ptr(md_dst); in BPF_CALL_3() 4907 if (!md_dst) { in bpf_get_skb_set_tunnel_proto() 4915 if (cmpxchg(&md_dst, NULL, tmp)) in bpf_get_skb_set_tunnel_proto()
|
| /linux-6.15/include/net/ |
| H A D | dst_metadata.h | 47 if (md_dst && md_dst->dst.flags & DST_METADATA) in skb_metadata_dst() 48 return md_dst; in skb_metadata_dst() 56 struct metadata_dst *md_dst = skb_metadata_dst(skb); in skb_tunnel_info() local 59 if (md_dst && md_dst->type == METADATA_IP_TUNNEL) in skb_tunnel_info() 60 return &md_dst->u.tun_info; in skb_tunnel_info() 78 struct metadata_dst *md_dst = skb_metadata_dst(skb); in skb_xfrm_md_info() local 81 if (md_dst && md_dst->type == METADATA_XFRM) in skb_xfrm_md_info() 82 return &md_dst->u.xfrm_info; in skb_xfrm_md_info() 158 if (!md_dst || md_dst->type != METADATA_IP_TUNNEL) in tun_dst_unclone() 161 md_size = md_dst->u.tun_info.options_len; in tun_dst_unclone() [all …]
|
| H A D | macsec.h | 213 struct metadata_dst *md_dst; member
|
| /linux-6.15/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-6.15/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 | 85 struct metadata_dst *md_dst; member 726 rx_sc->md_dst = metadata_dst_alloc(0, METADATA_MACSEC, GFP_KERNEL); in mlx5e_macsec_add_rxsc() 727 if (!rx_sc->md_dst) { in mlx5e_macsec_add_rxsc() 737 rx_sc->md_dst->u.macsec_info.sci = rx_sc->sci; in mlx5e_macsec_add_rxsc() 831 metadata_dst_free(rx_sc->md_dst); in macsec_del_rxsc_ctx() 1652 struct metadata_dst *md_dst = skb_metadata_dst(skb); in mlx5e_macsec_handle_tx_skb() local 1656 &md_dst->u.macsec_info.sci); in mlx5e_macsec_handle_tx_skb() 1671 struct metadata_dst *md_dst = skb_metadata_dst(skb); in mlx5e_macsec_tx_build_eseg() local 1675 &md_dst->u.macsec_info.sci); in mlx5e_macsec_tx_build_eseg() 1703 dst_hold(&rx_sc->md_dst->dst); in mlx5e_macsec_offload_handle_rx_skb() [all …]
|
| /linux-6.15/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-6.15/drivers/net/ethernet/netronome/nfp/nfd3/ |
| H A D | dp.c | 177 struct metadata_dst *md_dst = skb_metadata_dst(skb); in nfp_nfd3_prep_tx_meta() local 189 if (unlikely(md_dst && md_dst->type != METADATA_HW_PORT_MUX)) in nfp_nfd3_prep_tx_meta() 190 md_dst = NULL; in nfp_nfd3_prep_tx_meta() 194 if (!(md_dst || tls_handle || vlan_insert || *ipsec)) in nfp_nfd3_prep_tx_meta() 198 (!!md_dst ? NFP_NET_META_PORTID_SIZE : 0) + in nfp_nfd3_prep_tx_meta() 207 if (md_dst) { in nfp_nfd3_prep_tx_meta() 209 put_unaligned_be32(md_dst->u.port_info.port_id, data); in nfp_nfd3_prep_tx_meta()
|
| /linux-6.15/drivers/net/ethernet/netronome/nfp/nfdk/ |
| H A D | dp.c | 181 struct metadata_dst *md_dst = skb_metadata_dst(skb); in nfp_nfdk_prep_tx_meta() local 193 if (unlikely(md_dst && md_dst->type != METADATA_HW_PORT_MUX)) in nfp_nfdk_prep_tx_meta() 194 md_dst = NULL; in nfp_nfdk_prep_tx_meta() 198 if (!(md_dst || vlan_insert || *ipsec)) in nfp_nfdk_prep_tx_meta() 202 (!!md_dst ? NFP_NET_META_PORTID_SIZE : 0) + in nfp_nfdk_prep_tx_meta() 210 if (md_dst) { in nfp_nfdk_prep_tx_meta() 212 put_unaligned_be32(md_dst->u.port_info.port_id, data); in nfp_nfdk_prep_tx_meta()
|
| /linux-6.15/drivers/net/ |
| H A D | macsec.c | 987 struct metadata_dst *md_dst; in handle_not_macsec() local 994 md_dst = skb_metadata_dst(skb); in handle_not_macsec() 995 is_macsec_md_dst = md_dst && md_dst->type == METADATA_MACSEC; in handle_not_macsec() 1022 md_dst->u.macsec_info.sci); in handle_not_macsec() 3484 struct metadata_dst *md_dst = secy->tx_sc.md_dst; in macsec_start_xmit() local 3487 dst_hold(&md_dst->dst); in macsec_start_xmit() 3488 skb_dst_set(skb, &md_dst->dst); in macsec_start_xmit() 3830 dst_release(&macsec->secy.tx_sc.md_dst->dst); in macsec_free_netdev() 4112 secy->tx_sc.md_dst = metadata_dst_alloc(0, METADATA_MACSEC, GFP_KERNEL); in macsec_add_dev() 4113 if (!secy->tx_sc.md_dst) in macsec_add_dev() [all …]
|
| /linux-6.15/drivers/net/ethernet/airoha/ |
| H A D | airoha_eth.c | 2427 struct metadata_dst *md_dst; in airoha_metadata_dst_alloc() local 2429 md_dst = metadata_dst_alloc(0, METADATA_HW_PORT_MUX, in airoha_metadata_dst_alloc() 2431 if (!md_dst) in airoha_metadata_dst_alloc() 2434 md_dst->u.port_info.port_id = i; in airoha_metadata_dst_alloc() 2435 port->dsa_meta[i] = md_dst; in airoha_metadata_dst_alloc()
|
| /linux-6.15/drivers/net/ethernet/mediatek/ |
| H A D | mtk_eth_soc.c | 3494 struct metadata_dst *md_dst = eth->dsa_meta[i]; in mtk_open() local 3496 if (md_dst) in mtk_open() 3499 md_dst = metadata_dst_alloc(0, METADATA_HW_PORT_MUX, in mtk_open() 3501 if (!md_dst) in mtk_open() 3504 md_dst->u.port_info.port_id = i; in mtk_open() 3505 eth->dsa_meta[i] = md_dst; in mtk_open()
|
| /linux-6.15/drivers/net/ethernet/broadcom/bnxt/ |
| H A D | bnxt.c | 447 struct metadata_dst *md_dst = skb_metadata_dst(skb); in bnxt_xmit_get_cfa_action() local 449 if (!md_dst || md_dst->type != METADATA_HW_PORT_MUX) in bnxt_xmit_get_cfa_action() 452 return md_dst->u.port_info.port_id; in bnxt_xmit_get_cfa_action()
|