selftests: net: remove dependency on ebpf tests
[ Upstream commit 98cb12eb52a780e682bea8372fdb2912c08132dd ] Several net tests requires an XDP program build under the ebpf directory, and error out if such program is not available. That makes running successful net test hard, let's duplicate into the net dir the [very small] program, re-using the existing rules to build it, and finally dropping the bogus dependency. Signed-off-by: Paolo Abeni <pabeni@redhat.com> Reviewed-by: Willem de Bruijn <willemb@google.com> Link: https://lore.kernel.org/r/28e7af7c031557f691dc8045ee41dd549dd5e74c.1706131762.git.pabeni@redhat.com Signed-off-by: Jakub Kicinski <kuba@kernel.org> Stable-dep-of: 4acffb66630a ("selftests: net: explicitly wait for listener ready") Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
54a55b6322
commit
31a6e0a87b
|
@ -84,6 +84,7 @@ TEST_PROGS += sctp_vrf.sh
|
|||
TEST_GEN_FILES += sctp_hello
|
||||
TEST_GEN_FILES += csum
|
||||
TEST_GEN_FILES += nat6to4.o
|
||||
TEST_GEN_FILES += xdp_dummy.o
|
||||
TEST_GEN_FILES += ip_local_port_range
|
||||
TEST_GEN_FILES += bind_wildcard
|
||||
TEST_PROGS += test_vxlan_mdb.sh
|
||||
|
@ -100,7 +101,7 @@ $(OUTPUT)/tcp_mmap: LDLIBS += -lpthread -lcrypto
|
|||
$(OUTPUT)/tcp_inq: LDLIBS += -lpthread
|
||||
$(OUTPUT)/bind_bhash: LDLIBS += -lpthread
|
||||
|
||||
# Rules to generate bpf obj nat6to4.o
|
||||
# Rules to generate bpf objs
|
||||
CLANG ?= clang
|
||||
SCRATCH_DIR := $(OUTPUT)/tools
|
||||
BUILD_DIR := $(SCRATCH_DIR)/build
|
||||
|
@ -135,7 +136,7 @@ endif
|
|||
|
||||
CLANG_SYS_INCLUDES = $(call get_sys_includes,$(CLANG),$(CLANG_TARGET_ARCH))
|
||||
|
||||
$(OUTPUT)/nat6to4.o: nat6to4.c $(BPFOBJ) | $(MAKE_DIRS)
|
||||
$(OUTPUT)/nat6to4.o $(OUTPUT)/xdp_dummy.o: $(OUTPUT)/%.o : %.c $(BPFOBJ) | $(MAKE_DIRS)
|
||||
$(CLANG) -O2 --target=bpf -c $< $(CCINCLUDE) $(CLANG_SYS_INCLUDES) -o $@
|
||||
|
||||
$(BPFOBJ): $(wildcard $(BPFDIR)/*.[ch] $(BPFDIR)/Makefile) \
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
readonly PEER_NS="ns-peer-$(mktemp -u XXXXXX)"
|
||||
|
||||
BPF_FILE="../bpf/xdp_dummy.bpf.o"
|
||||
BPF_FILE="xdp_dummy.o"
|
||||
|
||||
# set global exit status, but never reset nonzero one.
|
||||
check_err()
|
||||
|
@ -198,7 +198,7 @@ run_all() {
|
|||
}
|
||||
|
||||
if [ ! -f ${BPF_FILE} ]; then
|
||||
echo "Missing ${BPF_FILE}. Build bpf selftest first"
|
||||
echo "Missing ${BPF_FILE}. Run 'make' first"
|
||||
exit -1
|
||||
fi
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
readonly PEER_NS="ns-peer-$(mktemp -u XXXXXX)"
|
||||
|
||||
BPF_FILE="../bpf/xdp_dummy.bpf.o"
|
||||
BPF_FILE="xdp_dummy.o"
|
||||
|
||||
cleanup() {
|
||||
local -r jobs="$(jobs -p)"
|
||||
|
@ -83,7 +83,7 @@ run_all() {
|
|||
}
|
||||
|
||||
if [ ! -f ${BPF_FILE} ]; then
|
||||
echo "Missing ${BPF_FILE}. Build bpf selftest first"
|
||||
echo "Missing ${BPF_FILE}. Run 'make' first"
|
||||
exit -1
|
||||
fi
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
readonly PEER_NS="ns-peer-$(mktemp -u XXXXXX)"
|
||||
|
||||
BPF_FILE="../bpf/xdp_dummy.bpf.o"
|
||||
BPF_FILE="xdp_dummy.o"
|
||||
|
||||
cleanup() {
|
||||
local -r jobs="$(jobs -p)"
|
||||
|
@ -84,12 +84,12 @@ run_all() {
|
|||
}
|
||||
|
||||
if [ ! -f ${BPF_FILE} ]; then
|
||||
echo "Missing ${BPF_FILE}. Build bpf selftest first"
|
||||
echo "Missing ${BPF_FILE}. Run 'make' first"
|
||||
exit -1
|
||||
fi
|
||||
|
||||
if [ ! -f nat6to4.o ]; then
|
||||
echo "Missing nat6to4 helper. Build bpf nat6to4.o selftest first"
|
||||
echo "Missing nat6to4 helper. Run 'make' first"
|
||||
exit -1
|
||||
fi
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#!/bin/bash
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
|
||||
BPF_FILE="../bpf/xdp_dummy.bpf.o"
|
||||
BPF_FILE="xdp_dummy.o"
|
||||
readonly BASE="ns-$(mktemp -u XXXXXX)"
|
||||
readonly SRC=2
|
||||
readonly DST=1
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#!/bin/sh
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
|
||||
BPF_FILE="../bpf/xdp_dummy.bpf.o"
|
||||
BPF_FILE="xdp_dummy.o"
|
||||
readonly STATS="$(mktemp -p /tmp ns-XXXXXX)"
|
||||
readonly BASE=`basename $STATS`
|
||||
readonly SRC=2
|
||||
|
@ -218,7 +218,7 @@ while getopts "hs:" option; do
|
|||
done
|
||||
|
||||
if [ ! -f ${BPF_FILE} ]; then
|
||||
echo "Missing ${BPF_FILE}. Build bpf selftest first"
|
||||
echo "Missing ${BPF_FILE}. Run 'make' first"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
|
||||
#define KBUILD_MODNAME "xdp_dummy"
|
||||
#include <linux/bpf.h>
|
||||
#include <bpf/bpf_helpers.h>
|
||||
|
||||
SEC("xdp")
|
||||
int xdp_dummy_prog(struct xdp_md *ctx)
|
||||
{
|
||||
return XDP_PASS;
|
||||
}
|
||||
|
||||
char _license[] SEC("license") = "GPL";
|
Loading…
Reference in New Issue