]>
git.proxmox.com Git - ceph.git/blob - ceph/src/seastar/dpdk/lib/librte_bpf/bpf_impl.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2018 Intel Corporation
15 #define MAX_BPF_STACK_SIZE 0x200
18 struct rte_bpf_prm prm
;
19 struct rte_bpf_jit jit
;
24 extern int bpf_validate(struct rte_bpf
*bpf
);
26 extern int bpf_jit(struct rte_bpf
*bpf
);
28 #ifdef RTE_ARCH_X86_64
29 extern int bpf_jit_x86(struct rte_bpf
*);
32 extern int rte_bpf_logtype
;
34 #define RTE_BPF_LOG(lvl, fmt, args...) \
35 rte_log(RTE_LOG_## lvl, rte_bpf_logtype, fmt, ##args)
38 bpf_size(uint32_t bpf_op_sz
)
40 if (bpf_op_sz
== BPF_B
)
41 return sizeof(uint8_t);
42 else if (bpf_op_sz
== BPF_H
)
43 return sizeof(uint16_t);
44 else if (bpf_op_sz
== BPF_W
)
45 return sizeof(uint32_t);
46 else if (bpf_op_sz
== EBPF_DW
)
47 return sizeof(uint64_t);