Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
at v4.8-rc4 35 lines 737 B view raw
1#include <asm/unistd.h> 2#include <linux/bpf.h> 3#include <unistd.h> 4 5#ifndef __NR_bpf 6# if defined(__i386__) 7# define __NR_bpf 357 8# elif defined(__x86_64__) 9# define __NR_bpf 321 10# elif defined(__aarch64__) 11# define __NR_bpf 280 12# error __NR_bpf not defined. libbpf does not support your arch. 13# endif 14#endif 15 16int main(void) 17{ 18 union bpf_attr attr; 19 20 /* Check fields in attr */ 21 attr.prog_type = BPF_PROG_TYPE_KPROBE; 22 attr.insn_cnt = 0; 23 attr.insns = 0; 24 attr.license = 0; 25 attr.log_buf = 0; 26 attr.log_size = 0; 27 attr.log_level = 0; 28 attr.kern_version = 0; 29 30 /* 31 * Test existence of __NR_bpf and BPF_PROG_LOAD. 32 * This call should fail if we run the testcase. 33 */ 34 return syscall(__NR_bpf, BPF_PROG_LOAD, &attr, sizeof(attr)); 35}