/openbmc/linux/samples/bpf/ |
H A D | parse_varlen.c | 51 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 …]
|
H A D | xdp_router_ipv4.bpf.c | 79 u64 nh_off = sizeof(*eth); in xdp_router_ipv4_prog() local 88 if (data + nh_off > data_end) in xdp_router_ipv4_prog() 96 vhdr = data + nh_off; in xdp_router_ipv4_prog() 97 nh_off += sizeof(struct vlan_hdr); in xdp_router_ipv4_prog() 98 if (data + nh_off > data_end) in xdp_router_ipv4_prog() 110 struct iphdr *iph = data + nh_off; in xdp_router_ipv4_prog()
|
H A D | xdp_fwd_kern.c | 52 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()
|
/openbmc/linux/tools/testing/selftests/bpf/progs/ |
H A D | xdp_redirect_multi_kern.c | 45 __u64 nh_off; in xdp_redirect_map_multi_prog() local 47 nh_off = sizeof(*eth); in xdp_redirect_map_multi_prog() 48 if (data + nh_off > data_end) in xdp_redirect_map_multi_prog() 80 __u64 nh_off; in xdp_devmap_prog() local 83 nh_off = sizeof(*eth); in xdp_devmap_prog() 84 if (data + nh_off > data_end) in xdp_devmap_prog()
|
H A D | test_verif_scale2.c | 14 int 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()
|
H A D | test_verif_scale3.c | 14 int 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()
|
H A D | test_verif_scale1.c | 14 int 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()
|
H A D | core_kern.c | 80 int nh_off, i = 0; in balancer_ingress() local 82 nh_off = 14; in balancer_ingress() 87 if (ptr + nh_off > data_end) \ in balancer_ingress() 89 ctx->tc_index = jhash(ptr, nh_off, ctx->cb[0] + i++); \ in balancer_ingress()
|
H A D | test_sk_lookup_kern.c | 21 static struct bpf_sock_tuple *get_tuple(void *data, __u64 nh_off, in get_tuple() argument 30 struct iphdr *iph = (struct iphdr *)(data + nh_off); in get_tuple() 39 struct ipv6hdr *ip6h = (struct ipv6hdr *)(data + nh_off); in get_tuple() 49 if (data + nh_off + ihl_len > data_end || proto != IPPROTO_TCP) in get_tuple()
|
H A D | test_xdp_noinline.c | 764 __u32 nh_off; in balancer_ingress_v4() local 766 nh_off = sizeof(struct eth_hdr); in balancer_ingress_v4() 767 if (data + nh_off > data_end) in balancer_ingress_v4() 771 return process_packet(data, nh_off, data_end, 0, ctx); in balancer_ingress_v4() 783 __u32 nh_off; in balancer_ingress_v6() local 785 nh_off = sizeof(struct eth_hdr); in balancer_ingress_v6() 786 if (data + nh_off > data_end) in balancer_ingress_v6() 790 return process_packet(data, nh_off, data_end, 1, ctx); in balancer_ingress_v6()
|
H A D | test_l4lb.c | 458 __u32 nh_off; in balancer_ingress() local 460 nh_off = sizeof(struct eth_hdr); in balancer_ingress() 461 if (data + nh_off > data_end) in balancer_ingress() 465 return process_packet(data, nh_off, data_end, false, ctx); in balancer_ingress() 467 return process_packet(data, nh_off, data_end, true, ctx); in balancer_ingress()
|
H A D | test_l4lb_noinline.c | 457 __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()
|
H A D | test_l4lb_noinline_dynptr.c | 464 __u32 nh_off; in balancer_ingress() local 467 nh_off = sizeof(struct eth_hdr); in balancer_ingress() 475 err = process_packet(&ptr, eth, nh_off, false, ctx); in balancer_ingress() 477 err = process_packet(&ptr, eth, nh_off, true, ctx); in balancer_ingress()
|
/openbmc/linux/include/linux/ |
H A D | virtio_net.h | 158 unsigned int nh_off = p_off; in virtio_net_hdr_to_skb() local 164 nh_off -= thlen; in virtio_net_hdr_to_skb() 189 if (skb->len - nh_off > gso_size) { in virtio_net_hdr_to_skb()
|
/openbmc/linux/drivers/net/ethernet/pasemi/ |
H A D | pasemi_mac.c | 1348 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()
|