Commit ae108c48 authored by Benjamin Poirier's avatar Benjamin Poirier Committed by Jakub Kicinski

selftests: net: Fix cross-tree inclusion of scripts

When exporting and running a subset of selftests via kselftest, files from
parts of the source tree which were not exported are not available. A few
tests are trying to source such files. Address the problem by using
symlinks.

The problem can be reproduced by running:
make -C tools/testing/selftests gen_tar TARGETS="drivers/net/bonding"
[... extract archive ...]
./run_kselftest.sh

or:
make kselftest KBUILD_OUTPUT=/tmp/kselftests TARGETS="drivers/net/bonding"

Fixes: bbb774d9 ("net: Add tests for bonding and team address list management")
Fixes: eccd0a80 ("selftests: net: dsa: add a stress test for unlocked FDB operations")
Link: https://lore.kernel.org/netdev/40f04ded-0c86-8669-24b1-9a313ca21076@redhat.com/Reported-by: default avatarJonathan Toppins <jtoppins@redhat.com>
Signed-off-by: default avatarBenjamin Poirier <bpoirier@nvidia.com>
Reviewed-by: default avatarJonathan Toppins <jtoppins@redhat.com>
Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent f8c1c66b
...@@ -7,6 +7,8 @@ TEST_PROGS := \ ...@@ -7,6 +7,8 @@ TEST_PROGS := \
bond-lladdr-target.sh \ bond-lladdr-target.sh \
dev_addr_lists.sh dev_addr_lists.sh
TEST_FILES := lag_lib.sh TEST_FILES := \
lag_lib.sh \
net_forwarding_lib.sh
include ../../../lib.mk include ../../../lib.mk
...@@ -14,7 +14,7 @@ ALL_TESTS=" ...@@ -14,7 +14,7 @@ ALL_TESTS="
REQUIRE_MZ=no REQUIRE_MZ=no
NUM_NETIFS=0 NUM_NETIFS=0
lib_dir=$(dirname "$0") lib_dir=$(dirname "$0")
source "$lib_dir"/../../../net/forwarding/lib.sh source "$lib_dir"/net_forwarding_lib.sh
source "$lib_dir"/lag_lib.sh source "$lib_dir"/lag_lib.sh
......
../../../net/forwarding/lib.sh
\ No newline at end of file
...@@ -18,8 +18,8 @@ NUM_NETIFS=1 ...@@ -18,8 +18,8 @@ NUM_NETIFS=1
REQUIRE_JQ="no" REQUIRE_JQ="no"
REQUIRE_MZ="no" REQUIRE_MZ="no"
NETIF_CREATE="no" NETIF_CREATE="no"
lib_dir=$(dirname $0)/../../../net/forwarding lib_dir=$(dirname "$0")
source $lib_dir/lib.sh source "$lib_dir"/lib.sh
cleanup() { cleanup() {
echo "Cleaning up" echo "Cleaning up"
......
...@@ -3,4 +3,8 @@ ...@@ -3,4 +3,8 @@
TEST_PROGS := dev_addr_lists.sh TEST_PROGS := dev_addr_lists.sh
TEST_FILES := \
lag_lib.sh \
net_forwarding_lib.sh
include ../../../lib.mk include ../../../lib.mk
...@@ -11,9 +11,9 @@ ALL_TESTS=" ...@@ -11,9 +11,9 @@ ALL_TESTS="
REQUIRE_MZ=no REQUIRE_MZ=no
NUM_NETIFS=0 NUM_NETIFS=0
lib_dir=$(dirname "$0") lib_dir=$(dirname "$0")
source "$lib_dir"/../../../net/forwarding/lib.sh source "$lib_dir"/net_forwarding_lib.sh
source "$lib_dir"/../bonding/lag_lib.sh source "$lib_dir"/lag_lib.sh
destroy() destroy()
......
../bonding/lag_lib.sh
\ No newline at end of file
../../../net/forwarding/lib.sh
\ No newline at end of file
...@@ -70,7 +70,7 @@ endef ...@@ -70,7 +70,7 @@ endef
run_tests: all run_tests: all
ifdef building_out_of_srctree ifdef building_out_of_srctree
@if [ "X$(TEST_PROGS)$(TEST_PROGS_EXTENDED)$(TEST_FILES)" != "X" ]; then \ @if [ "X$(TEST_PROGS)$(TEST_PROGS_EXTENDED)$(TEST_FILES)" != "X" ]; then \
rsync -aq $(TEST_PROGS) $(TEST_PROGS_EXTENDED) $(TEST_FILES) $(OUTPUT); \ rsync -aLq $(TEST_PROGS) $(TEST_PROGS_EXTENDED) $(TEST_FILES) $(OUTPUT); \
fi fi
@if [ "X$(TEST_PROGS)" != "X" ]; then \ @if [ "X$(TEST_PROGS)" != "X" ]; then \
$(call RUN_TESTS, $(TEST_GEN_PROGS) $(TEST_CUSTOM_PROGS) \ $(call RUN_TESTS, $(TEST_GEN_PROGS) $(TEST_CUSTOM_PROGS) \
...@@ -84,7 +84,7 @@ endif ...@@ -84,7 +84,7 @@ endif
define INSTALL_SINGLE_RULE define INSTALL_SINGLE_RULE
$(if $(INSTALL_LIST),@mkdir -p $(INSTALL_PATH)) $(if $(INSTALL_LIST),@mkdir -p $(INSTALL_PATH))
$(if $(INSTALL_LIST),rsync -a $(INSTALL_LIST) $(INSTALL_PATH)/) $(if $(INSTALL_LIST),rsync -aL $(INSTALL_LIST) $(INSTALL_PATH)/)
endef endef
define INSTALL_RULE define INSTALL_RULE
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment