Home
last modified time | relevance | path

Searched refs:nh_off (Results 1 – 19 of 19) sorted by relevance

/kernel/linux/linux-5.10/samples/bpf/
Dparse_varlen.c51 static int parse_ipv4(void *data, uint64_t nh_off, void *data_end) in parse_ipv4() argument
56 iph = data + nh_off; in parse_ipv4()
65 iph = data + nh_off + ihl_len; in parse_ipv4()
72 return tcp(data, nh_off + ihl_len, data_end); in parse_ipv4()
74 return udp(data, nh_off + ihl_len, data_end); in parse_ipv4()
78 static int parse_ipv6(void *data, uint64_t nh_off, void *data_end) in parse_ipv6() argument
85 ip6h = data + nh_off; in parse_ipv6()
92 iph = data + nh_off + ihl_len; in parse_ipv6()
98 ip6h = data + nh_off + ihl_len; in parse_ipv6()
106 return tcp(data, nh_off + ihl_len, data_end); in parse_ipv6()
[all …]
Dxdp1_kern.c24 static int parse_ipv4(void *data, u64 nh_off, void *data_end) in parse_ipv4() argument
26 struct iphdr *iph = data + nh_off; in parse_ipv4()
33 static int parse_ipv6(void *data, u64 nh_off, void *data_end) in parse_ipv6() argument
35 struct ipv6hdr *ip6h = data + nh_off; in parse_ipv6()
51 u64 nh_off; in xdp_prog1() local
54 nh_off = sizeof(*eth); in xdp_prog1()
55 if (data + nh_off > data_end) in xdp_prog1()
63 vhdr = data + nh_off; in xdp_prog1()
64 nh_off += sizeof(struct vlan_hdr); in xdp_prog1()
65 if (data + nh_off > data_end) in xdp_prog1()
[all …]
Dxdp2_kern.c40 static int parse_ipv4(void *data, u64 nh_off, void *data_end) in parse_ipv4() argument
42 struct iphdr *iph = data + nh_off; in parse_ipv4()
49 static int parse_ipv6(void *data, u64 nh_off, void *data_end) in parse_ipv6() argument
51 struct ipv6hdr *ip6h = data + nh_off; in parse_ipv6()
67 u64 nh_off; in xdp_prog1() local
70 nh_off = sizeof(*eth); in xdp_prog1()
71 if (data + nh_off > data_end) in xdp_prog1()
79 vhdr = data + nh_off; in xdp_prog1()
80 nh_off += sizeof(struct vlan_hdr); in xdp_prog1()
81 if (data + nh_off > data_end) in xdp_prog1()
[all …]
Dxdp_router_ipv4_kern.c96 static inline int parse_ipv4(void *data, u64 nh_off, void *data_end, in parse_ipv4() argument
99 struct iphdr *iph = data + nh_off; in parse_ipv4()
121 u64 nh_off; in xdp_router_ipv4_prog() local
123 nh_off = sizeof(*eth); in xdp_router_ipv4_prog()
124 if (data + nh_off > data_end) in xdp_router_ipv4_prog()
132 vhdr = data + nh_off; in xdp_router_ipv4_prog()
133 nh_off += sizeof(struct vlan_hdr); in xdp_router_ipv4_prog()
134 if (data + nh_off > data_end) in xdp_router_ipv4_prog()
144 ipproto = parse_ipv4(data, nh_off, data_end, &src_ip, &dest_ip); in xdp_router_ipv4_prog()
Dxdp_fwd_kern.c52 u64 nh_off; in xdp_fwd_flags() local
55 nh_off = sizeof(*eth); in xdp_fwd_flags()
56 if (data + nh_off > data_end) in xdp_fwd_flags()
63 iph = data + nh_off; in xdp_fwd_flags()
83 ip6h = data + nh_off; in xdp_fwd_flags()
Dxdp_redirect_map_kern.c65 u64 nh_off; in xdp_redirect_map_prog() local
67 nh_off = sizeof(*eth); in xdp_redirect_map_prog()
68 if (data + nh_off > data_end) in xdp_redirect_map_prog()
Dxdp_redirect_kern.c65 u64 nh_off; in xdp_redirect_prog() local
67 nh_off = sizeof(*eth); in xdp_redirect_prog()
68 if (data + nh_off > data_end) in xdp_redirect_prog()
Dxdp_redirect_cpu_kern.c158 u16 get_dest_port_ipv4_udp(struct xdp_md *ctx, u64 nh_off) in get_dest_port_ipv4_udp() argument
162 struct iphdr *iph = data + nh_off; in get_dest_port_ipv4_udp()
180 int get_proto_ipv4(struct xdp_md *ctx, u64 nh_off) in get_proto_ipv4() argument
184 struct iphdr *iph = data + nh_off; in get_proto_ipv4()
192 int get_proto_ipv6(struct xdp_md *ctx, u64 nh_off) in get_proto_ipv6() argument
196 struct ipv6hdr *ip6h = data + nh_off; in get_proto_ipv6()
472 u32 get_ipv4_hash_ip_pair(struct xdp_md *ctx, u64 nh_off) in get_ipv4_hash_ip_pair() argument
476 struct iphdr *iph = data + nh_off; in get_ipv4_hash_ip_pair()
489 u32 get_ipv6_hash_ip_pair(struct xdp_md *ctx, u64 nh_off) in get_ipv6_hash_ip_pair() argument
493 struct ipv6hdr *ip6h = data + nh_off; in get_ipv6_hash_ip_pair()
/kernel/linux/linux-5.10/tools/testing/selftests/bpf/progs/
Dtest_verif_scale2.c14 int ret = 0, nh_off, i = 0; in balancer_ingress() local
16 nh_off = 14; in balancer_ingress()
22 if (ptr + nh_off > data_end) \ in balancer_ingress()
24 ctx->tc_index = jhash(ptr, nh_off, ctx->cb[0] + i++); \ in balancer_ingress()
Dtest_verif_scale3.c14 int ret = 0, nh_off, i = 0; in balancer_ingress() local
16 nh_off = 32; in balancer_ingress()
22 if (ptr + nh_off > data_end) \ in balancer_ingress()
24 ctx->tc_index = jhash(ptr, nh_off, ctx->cb[0] + i++); \ in balancer_ingress()
Dtest_verif_scale1.c14 int ret = 0, nh_off, i = 0; in balancer_ingress() local
16 nh_off = 14; in balancer_ingress()
22 if (ptr + nh_off > data_end) \ in balancer_ingress()
24 ctx->tc_index = jhash(ptr, nh_off, ctx->cb[0] + i++); \ in balancer_ingress()
Dtest_sk_lookup_kern.c22 static struct bpf_sock_tuple *get_tuple(void *data, __u64 nh_off, in get_tuple() argument
31 struct iphdr *iph = (struct iphdr *)(data + nh_off); in get_tuple()
40 struct ipv6hdr *ip6h = (struct ipv6hdr *)(data + nh_off); in get_tuple()
50 if (data + nh_off + ihl_len > data_end || proto != IPPROTO_TCP) in get_tuple()
Dtest_l4lb.c460 __u32 nh_off; in balancer_ingress() local
462 nh_off = sizeof(struct eth_hdr); in balancer_ingress()
463 if (data + nh_off > data_end) in balancer_ingress()
467 return process_packet(data, nh_off, data_end, false, ctx); in balancer_ingress()
469 return process_packet(data, nh_off, data_end, true, ctx); in balancer_ingress()
Dtest_l4lb_noinline.c457 __u32 nh_off; in balancer_ingress() local
459 nh_off = sizeof(struct eth_hdr); in balancer_ingress()
460 if (data + nh_off > data_end) in balancer_ingress()
464 return process_packet(data, nh_off, data_end, false, ctx); in balancer_ingress()
466 return process_packet(data, nh_off, data_end, true, ctx); in balancer_ingress()
Dtest_xdp_noinline.c807 __u32 nh_off; in balancer_ingress_v4() local
809 nh_off = sizeof(struct eth_hdr); in balancer_ingress_v4()
810 if (data + nh_off > data_end) in balancer_ingress_v4()
814 return process_packet(data, nh_off, data_end, 0, ctx); in balancer_ingress_v4()
826 __u32 nh_off; in balancer_ingress_v6() local
828 nh_off = sizeof(struct eth_hdr); in balancer_ingress_v6()
829 if (data + nh_off > data_end) in balancer_ingress_v6()
833 return process_packet(data, nh_off, data_end, 1, ctx); in balancer_ingress_v6()
Dfexit_bpf2bpf.c124 __u32 nh_off; in new_get_skb_ifindex() local
/kernel/linux/linux-5.10/include/linux/
Dvirtio_net.h144 unsigned int nh_off = p_off; in virtio_net_hdr_to_skb() local
149 nh_off -= thlen; in virtio_net_hdr_to_skb()
152 if (skb->len - nh_off > gso_size) { in virtio_net_hdr_to_skb()
/kernel/linux/linux-5.10/drivers/net/ethernet/pasemi/
Dpasemi_mac.c1348 const int nh_off = skb_network_offset(skb); in pasemi_mac_queue_csdesc() local
1356 XCT_FUN_CRM_SIG | XCT_FUN_LLEN(skb->len - nh_off) | in pasemi_mac_queue_csdesc()
1383 CS_DESC(csring, fill) = XCT_PTR_LEN(map_size[0]-nh_off) | XCT_PTR_ADDR(map[0]+nh_off); in pasemi_mac_queue_csdesc()
1438 const int nh_off = skb_network_offset(skb); in pasemi_mac_start_tx() local
1470 dflags |= XCT_MACTX_IPO(nh_off); in pasemi_mac_start_tx()
1475 dflags |= XCT_MACTX_IPO(nh_off); in pasemi_mac_start_tx()
/kernel/linux/linux-5.10/net/openvswitch/
Dconntrack.c793 int hooknum, nh_off, err = NF_ACCEPT; in ovs_ct_nat_execute() local
795 nh_off = skb_network_offset(skb); in ovs_ct_nat_execute()
796 skb_pull_rcsum(skb, nh_off); in ovs_ct_nat_execute()
861 skb_push(skb, nh_off); in ovs_ct_nat_execute()
862 skb_postpush_rcsum(skb, skb->data, nh_off); in ovs_ct_nat_execute()