| #!/bin/sh |
| # SPDX-License-Identifier: GPL-2.0 |
| |
| export TESTNAME=test_libbpf |
| |
| # Determine selftest success via shell exit code |
| exit_handler() |
| { |
| if (( $? == 0 )); then |
| echo "selftests: $TESTNAME [PASS]"; |
| else |
| echo "$TESTNAME: failed at file $LAST_LOADED" 1>&2 |
| echo "selftests: $TESTNAME [FAILED]"; |
| fi |
| } |
| |
| libbpf_open_file() |
| { |
| LAST_LOADED=$1 |
| if [ -n "$VERBOSE" ]; then |
| ./test_libbpf_open $1 |
| else |
| ./test_libbpf_open --quiet $1 |
| fi |
| } |
| |
| # Exit script immediately (well catched by trap handler) if any |
| # program/thing exits with a non-zero status. |
| set -e |
| |
| # (Use 'trap -l' to list meaning of numbers) |
| trap exit_handler 0 2 3 6 9 |
| |
| libbpf_open_file test_l4lb.o |
| |
| # TODO: fix libbpf to load noinline functions |
| # [warning] libbpf: incorrect bpf_call opcode |
| #libbpf_open_file test_l4lb_noinline.o |
| |
| # TODO: fix test_xdp_meta.c to load with libbpf |
| # [warning] libbpf: test_xdp_meta.o doesn't provide kernel version |
| #libbpf_open_file test_xdp_meta.o |
| |
| # TODO: fix libbpf to handle .eh_frame |
| # [warning] libbpf: relocation failed: no section(10) |
| #libbpf_open_file ../../../../samples/bpf/tracex3_kern.o |
| |
| # Success |
| exit 0 |