/linux-6.12.1/net/core/ |
D | dst.c | 272 static void __metadata_dst_init(struct metadata_dst *md_dst, in __metadata_dst_init() argument 277 dst = &md_dst->dst; in __metadata_dst_init() 280 memset(dst + 1, 0, sizeof(*md_dst) + optslen - sizeof(*dst)); in __metadata_dst_init() 281 md_dst->type = type; in __metadata_dst_init() 287 struct metadata_dst *md_dst; in metadata_dst_alloc() local 289 md_dst = kmalloc(sizeof(*md_dst) + optslen, flags); in metadata_dst_alloc() 290 if (!md_dst) in metadata_dst_alloc() 293 __metadata_dst_init(md_dst, type, optslen); in metadata_dst_alloc() 295 return md_dst; in metadata_dst_alloc() 299 void metadata_dst_free(struct metadata_dst *md_dst) in metadata_dst_free() argument [all …]
|
D | flow_dissector.c | 1076 struct metadata_dst *md_dst = skb_metadata_dst(skb); in __skb_flow_dissect() local 1083 (!md_dst || md_dst->type != METADATA_HW_PORT_MUX)) { in __skb_flow_dissect()
|
D | filter.c | 4780 static struct metadata_dst __percpu *md_dst; variable 4785 struct metadata_dst *md = this_cpu_ptr(md_dst); in BPF_CALL_4() 4867 const struct metadata_dst *md = this_cpu_ptr(md_dst); in BPF_CALL_3() 4893 if (!md_dst) { in bpf_get_skb_set_tunnel_proto() 4901 if (cmpxchg(&md_dst, NULL, tmp)) in bpf_get_skb_set_tunnel_proto()
|
/linux-6.12.1/include/net/ |
D | dst_metadata.h | 45 struct metadata_dst *md_dst = (struct metadata_dst *) skb_dst(skb); in skb_metadata_dst() local 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() 135 void metadata_dst_free_percpu(struct metadata_dst __percpu *md_dst); [all …]
|
D | macsec.h | 213 struct metadata_dst *md_dst; member
|
/linux-6.12.1/net/xfrm/ |
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()
|
D | xfrm_interface_core.c | 409 struct metadata_dst *md_dst; in xfrmi_rcv_cb() local 411 md_dst = metadata_dst_alloc(0, METADATA_XFRM, GFP_ATOMIC); in xfrmi_rcv_cb() 412 if (!md_dst) in xfrmi_rcv_cb() 415 md_dst->u.xfrm_info.if_id = x->if_id; in xfrmi_rcv_cb() 416 md_dst->u.xfrm_info.link = link; in xfrmi_rcv_cb() 417 skb_dst_set(skb, (struct dst_entry *)md_dst); in xfrmi_rcv_cb()
|
/linux-6.12.1/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ |
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()
|
D | macsec.c | 85 struct metadata_dst *md_dst; member 722 rx_sc->md_dst = metadata_dst_alloc(0, METADATA_MACSEC, GFP_KERNEL); in mlx5e_macsec_add_rxsc() 723 if (!rx_sc->md_dst) { in mlx5e_macsec_add_rxsc() 733 rx_sc->md_dst->u.macsec_info.sci = rx_sc->sci; in mlx5e_macsec_add_rxsc() 827 metadata_dst_free(rx_sc->md_dst); in macsec_del_rxsc_ctx() 1648 struct metadata_dst *md_dst = skb_metadata_dst(skb); in mlx5e_macsec_handle_tx_skb() local 1652 &md_dst->u.macsec_info.sci); in mlx5e_macsec_handle_tx_skb() 1667 struct metadata_dst *md_dst = skb_metadata_dst(skb); in mlx5e_macsec_tx_build_eseg() local 1671 &md_dst->u.macsec_info.sci); in mlx5e_macsec_tx_build_eseg() 1699 dst_hold(&rx_sc->md_dst->dst); in mlx5e_macsec_offload_handle_rx_skb() [all …]
|
/linux-6.12.1/net/dsa/ |
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.12.1/drivers/net/ethernet/netronome/nfp/nfd3/ |
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.12.1/drivers/net/ethernet/netronome/nfp/nfdk/ |
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.12.1/drivers/net/ |
D | macsec.c | 986 struct metadata_dst *md_dst; in handle_not_macsec() local 993 md_dst = skb_metadata_dst(skb); in handle_not_macsec() 994 is_macsec_md_dst = md_dst && md_dst->type == METADATA_MACSEC; in handle_not_macsec() 1021 md_dst->u.macsec_info.sci); in handle_not_macsec() 3468 struct metadata_dst *md_dst = secy->tx_sc.md_dst; in macsec_start_xmit() local 3471 dst_hold(&md_dst->dst); in macsec_start_xmit() 3472 skb_dst_set(skb, &md_dst->dst); in macsec_start_xmit() 3801 dst_release(&macsec->secy.tx_sc.md_dst->dst); in macsec_free_netdev() 4083 secy->tx_sc.md_dst = metadata_dst_alloc(0, METADATA_MACSEC, GFP_KERNEL); in macsec_add_dev() 4084 if (!secy->tx_sc.md_dst) in macsec_add_dev() [all …]
|
/linux-6.12.1/drivers/net/ethernet/mediatek/ |
D | mtk_eth_soc.c | 3438 struct metadata_dst *md_dst = eth->dsa_meta[i]; in mtk_open() local 3440 if (md_dst) in mtk_open() 3443 md_dst = metadata_dst_alloc(0, METADATA_HW_PORT_MUX, in mtk_open() 3445 if (!md_dst) in mtk_open() 3448 md_dst->u.port_info.port_id = i; in mtk_open() 3449 eth->dsa_meta[i] = md_dst; in mtk_open()
|
/linux-6.12.1/drivers/net/ethernet/broadcom/bnxt/ |
D | bnxt.c | 429 struct metadata_dst *md_dst = skb_metadata_dst(skb); in bnxt_xmit_get_cfa_action() local 431 if (!md_dst || md_dst->type != METADATA_HW_PORT_MUX) in bnxt_xmit_get_cfa_action() 434 return md_dst->u.port_info.port_id; in bnxt_xmit_get_cfa_action()
|