diff mbox series

[2/3] selftests/bpf: add default bpftool built by selftests to PATH

Message ID 20210819072431.21966-2-lizhijian@cn.fujitsu.com (mailing list archive)
State Changes Requested
Delegated to: BPF
Headers show
Series [1/3] selftests/bpf: make test_doc_build.sh work from script directory | expand

Checks

Context Check Description
netdev/tree_selection success Not a local patch
bpf/vmtest success Kernel LATEST + selftests

Commit Message

Li Zhijian Aug. 19, 2021, 7:24 a.m. UTC
For 'make run_tests':
selftests will build bpftool into tools/testing/selftests/bpf/tools/sbin/bpftool
by default.

==================
root@lkp-skl-d01 /opt/rootfs/v5.14-rc4# make -C tools/testing/selftests/bpf run_tests
make: Entering directory '/opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf'
  MKDIR    include
  MKDIR    libbpf
  MKDIR    bpftool
[...]
  GEN     /opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/tools/build/bpftool/profiler.skel.h
  CC      /opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/tools/build/bpftool/prog.o
  GEN     /opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/tools/build/bpftool/pid_iter.skel.h
  CC      /opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/tools/build/bpftool/pids.o
  LINK    /opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/tools/build/bpftool/bpftool
  INSTALL bpftool
  GEN      vmlinux.h
[...]
 # test_feature_dev_json (test_bpftool.TestBpftool) ... ERROR
 # test_feature_kernel (test_bpftool.TestBpftool) ... ERROR
 # test_feature_kernel_full (test_bpftool.TestBpftool) ... ERROR
 # test_feature_kernel_full_vs_not_full (test_bpftool.TestBpftool) ... ERROR
 # test_feature_macros (test_bpftool.TestBpftool) ... Error: bug: failed to retrieve CAP_BPF status: Invalid argument
 # ERROR
 #
 # ======================================================================
 # ERROR: test_feature_dev_json (test_bpftool.TestBpftool)
 # ----------------------------------------------------------------------
 # Traceback (most recent call last):
 #   File "/opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/test_bpftool.py", line 57, in wrapper
 #     return f(*args, iface, **kwargs)
 #   File "/opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/test_bpftool.py", line 82, in test_feature_dev_json
 #     res = bpftool_json(["feature", "probe", "dev", iface])
 #   File "/opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/test_bpftool.py", line 42, in bpftool_json
 #     res = _bpftool(args)
 #   File "/opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/test_bpftool.py", line 34, in _bpftool
 #     return subprocess.check_output(_args)
 #   File "/usr/lib/python3.7/subprocess.py", line 395, in check_output
 #     **kwargs).stdout
 #   File "/usr/lib/python3.7/subprocess.py", line 487, in run
 #     output=stdout, stderr=stderr)
 # subprocess.CalledProcessError: Command '['bpftool', '-j', 'feature', 'probe', 'dev', 'dummy0']' returned non-zero exit status 255.
 #
==================

Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
---
 tools/testing/selftests/bpf/test_bpftool.sh | 5 +++++
 1 file changed, 5 insertions(+)

Comments

Song Liu Aug. 19, 2021, 10:13 p.m. UTC | #1
On Thu, Aug 19, 2021 at 12:27 AM Li Zhijian <lizhijian@cn.fujitsu.com> wrote:
>
> For 'make run_tests':
> selftests will build bpftool into tools/testing/selftests/bpf/tools/sbin/bpftool
> by default.
>
> ==================
> root@lkp-skl-d01 /opt/rootfs/v5.14-rc4# make -C tools/testing/selftests/bpf run_tests
> make: Entering directory '/opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf'
>   MKDIR    include
>   MKDIR    libbpf
>   MKDIR    bpftool
> [...]
>   GEN     /opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/tools/build/bpftool/profiler.skel.h
>   CC      /opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/tools/build/bpftool/prog.o
>   GEN     /opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/tools/build/bpftool/pid_iter.skel.h
>   CC      /opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/tools/build/bpftool/pids.o
>   LINK    /opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/tools/build/bpftool/bpftool
>   INSTALL bpftool
>   GEN      vmlinux.h
> [...]
>  # test_feature_dev_json (test_bpftool.TestBpftool) ... ERROR
>  # test_feature_kernel (test_bpftool.TestBpftool) ... ERROR
>  # test_feature_kernel_full (test_bpftool.TestBpftool) ... ERROR
>  # test_feature_kernel_full_vs_not_full (test_bpftool.TestBpftool) ... ERROR
>  # test_feature_macros (test_bpftool.TestBpftool) ... Error: bug: failed to retrieve CAP_BPF status: Invalid argument
>  # ERROR
>  #
>  # ======================================================================
>  # ERROR: test_feature_dev_json (test_bpftool.TestBpftool)
>  # ----------------------------------------------------------------------
>  # Traceback (most recent call last):
>  #   File "/opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/test_bpftool.py", line 57, in wrapper
>  #     return f(*args, iface, **kwargs)
>  #   File "/opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/test_bpftool.py", line 82, in test_feature_dev_json
>  #     res = bpftool_json(["feature", "probe", "dev", iface])
>  #   File "/opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/test_bpftool.py", line 42, in bpftool_json
>  #     res = _bpftool(args)
>  #   File "/opt/rootfs/v5.14-rc4/tools/testing/selftests/bpf/test_bpftool.py", line 34, in _bpftool
>  #     return subprocess.check_output(_args)
>  #   File "/usr/lib/python3.7/subprocess.py", line 395, in check_output
>  #     **kwargs).stdout
>  #   File "/usr/lib/python3.7/subprocess.py", line 487, in run
>  #     output=stdout, stderr=stderr)
>  # subprocess.CalledProcessError: Command '['bpftool', '-j', 'feature', 'probe', 'dev', 'dummy0']' returned non-zero exit status 255.
>  #
> ==================
>
> Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>

Acked-by: Song Liu <songliubraving@fb.com>

> ---
>  tools/testing/selftests/bpf/test_bpftool.sh | 5 +++++
>  1 file changed, 5 insertions(+)
>
> diff --git a/tools/testing/selftests/bpf/test_bpftool.sh b/tools/testing/selftests/bpf/test_bpftool.sh
> index 66690778e36d..6b7ba19be1d0 100755
> --- a/tools/testing/selftests/bpf/test_bpftool.sh
> +++ b/tools/testing/selftests/bpf/test_bpftool.sh
> @@ -2,4 +2,9 @@
>  # SPDX-License-Identifier: GPL-2.0
>  # Copyright (c) 2020 SUSE LLC.
>
> +SCRIPT_DIR=$(dirname $(realpath $0))
> +
> +# 'make -C tools/testing/selftests/bpf' will install to BPFTOOL_INSTALL_PATH
> +BPFTOOL_INSTALL_PATH="$SCRIPT_DIR"/tools/sbin
> +export PATH=$BPFTOOL_INSTALL_PATH:$PATH
>  python3 -m unittest -v test_bpftool.TestBpftool
> --
> 2.32.0
>
>
>
diff mbox series

Patch

diff --git a/tools/testing/selftests/bpf/test_bpftool.sh b/tools/testing/selftests/bpf/test_bpftool.sh
index 66690778e36d..6b7ba19be1d0 100755
--- a/tools/testing/selftests/bpf/test_bpftool.sh
+++ b/tools/testing/selftests/bpf/test_bpftool.sh
@@ -2,4 +2,9 @@ 
 # SPDX-License-Identifier: GPL-2.0
 # Copyright (c) 2020 SUSE LLC.
 
+SCRIPT_DIR=$(dirname $(realpath $0))
+
+# 'make -C tools/testing/selftests/bpf' will install to BPFTOOL_INSTALL_PATH
+BPFTOOL_INSTALL_PATH="$SCRIPT_DIR"/tools/sbin
+export PATH=$BPFTOOL_INSTALL_PATH:$PATH
 python3 -m unittest -v test_bpftool.TestBpftool