perf test BPF skipping

From: Arnaldo Carvalho de Melo
Date: Tue Apr 11 2017 - 14:36:13 EST


Ideas? Will dig deeper later, the warning in the perf test output
doesn't help.

Using perf as in acme/perf/core

[root@jouet ~]# perf test bpf
38: BPF filter :
38.1: Basic BPF filtering : Skip
38.2: BPF pinning : Skip
38.3: BPF prologue generation : Skip
38.4: BPF relocation checker : Skip
[root@jouet ~]# perf test -v bpf
38: BPF filter :
38.1: Basic BPF filtering :
--- start ---
test child forked, pid 26303
Missing basic BPF support, skip this test: Operation not permitted
test child finished with -2
---- end ----
BPF filter subtest 0: Skip
38.2: BPF pinning :
--- force skipped ---
BPF filter subtest 1: Skip
38.3: BPF prologue generation :
--- force skipped ---
BPF filter subtest 2: Skip
38.4: BPF relocation checker :
--- force skipped ---
BPF filter subtest 3: Skip
[root@jouet ~]#
[root@jouet ~]# uname -a
Linux jouet 4.11.0-rc6+ #7 SMP Tue Apr 11 11:53:14 -03 2017 x86_64 x86_64 x86_64 GNU/Linux
[root@jouet ~]# grep ' t bpf' /proc/kallsyms
ffffffff9b09e338 t bpf_slow_path_word
ffffffff9b09e36a t bpf_slow_path_half
ffffffff9b09e3a2 t bpf_slow_path_byte
ffffffff9b09e3d3 t bpf_slow_path_word_neg
ffffffff9b09e403 t bpf_slow_path_half_neg
ffffffff9b09e435 t bpf_slow_path_byte_neg
ffffffff9b09e460 t bpf_error
ffffffff9b1a5450 t bpf_get_prog_name
ffffffff9b1a69c0 t bpf_prog_kallsyms_find
ffffffff9b1a7e80 t bpf_prog_free_deferred
ffffffff9b1a9b50 t bpf_map_free_deferred
ffffffff9b1a9b80 t bpf_map_put_uref
ffffffff9b1a9ba0 t bpf_map_show_fdinfo
ffffffff9b1a9c40 t bpf_prog_show_fdinfo
ffffffff9b1a9e40 t bpf_prog_release
ffffffff9b1a9e90 t bpf_prog_uncharge_memlock.isra.17
ffffffff9b1aa130 t bpf_map_release
ffffffff9b1aa640 t bpf_prog_load
ffffffff9b1b0370 t bpf_get_inode
ffffffff9b1b0410 t bpf_dentry_finalize
ffffffff9b1b0460 t bpf_mkdir
ffffffff9b1b04d0 t bpf_symlink
ffffffff9b1b0560 t bpf_lookup
ffffffff9b1b05c0 t bpf_mount
ffffffff9b1b05e0 t bpf_fill_super
ffffffff9b1b06f0 t bpf_any_put
ffffffff9b1b0740 t bpf_evict_inode
ffffffff9b1b07b0 t bpf_mkobj
ffffffff9b1b7eb0 t bpf_overflow_handler
ffffffff9b751dd0 t bpf_convert_ctx_access
ffffffff9b7525b0 t bpf_xdp_copy
ffffffff9b7525d0 t bpf_convert_filter
ffffffff9b753450 t bpf_get_skb_set_tunnel_proto
ffffffff9b753af0 t bpf_prog_store_orig_filter.isra.37
ffffffff9b753e80 t bpf_base_func_proto
ffffffff9b7541f0 t bpf_skb_copy
ffffffff9b755630 t bpf_prepare_filter
ffffffff9b762ee0 t bpf_encap_nlsize
ffffffff9b762ef0 t bpf_lwt_prog_destroy
ffffffff9b762f20 t bpf_destroy_state
ffffffff9b762f50 t bpf_parse_prog
ffffffff9b763010 t bpf_build_state
ffffffff9b763190 t bpf_lwt_prog_cmp.isra.6
ffffffff9b7631c0 t bpf_encap_cmp
ffffffff9b763490 t bpf_xmit
ffffffff9b763530 t bpf_output
ffffffff9b7635d0 t bpf_input
ffffffff9b763660 t bpf_fill_lwt_prog
ffffffff9b763700 t bpf_fill_encap_info
ffffffff9bfb4046 t bpf_init
ffffffff9bfefcd2 t bpf_lwt_init
[root@jouet ~]#

[root@jouet ~]# grep BPF ~acme/git/build/v4.11.0-rc6+/.config
CONFIG_CGROUP_BPF=y
CONFIG_BPF=y
CONFIG_BPF_SYSCALL=y
CONFIG_NETFILTER_XT_MATCH_BPF=m
CONFIG_NET_CLS_BPF=m
CONFIG_NET_ACT_BPF=m
CONFIG_BPF_JIT=y
CONFIG_LWTUNNEL_BPF=y
CONFIG_HAVE_EBPF_JIT=y
CONFIG_BPF_EVENTS=y
# CONFIG_TEST_BPF is not set
[root@jouet ~]#

[root@jouet ~]# perf test LLVM
36: LLVM search and compile :
36.1: Basic BPF llvm compile : Ok
36.2: kbuild searching : Ok
36.3: Compile source for BPF prologue generation: Ok
36.4: Compile source for BPF relocation : Ok
[root@jouet ~]#