summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephen Rothwell <sfr@canb.auug.org.au>2015-02-19 14:22:48 +1100
committerStephen Rothwell <sfr@canb.auug.org.au>2015-02-19 14:22:48 +1100
commitc871087d97c8d3c77cf3029143292f34b0050067 (patch)
tree03dfe56b0a5e800af845ba0faab57c55efa24247
parentc5c764627b00a76527f2ad41c9fa362ac6507aa1 (diff)
parent6ddf898c23d62c974e148efd9e509731324a167a (diff)
Merge remote-tracking branch 'kselftest/next'
-rw-r--r--Makefile14
-rw-r--r--tools/testing/selftests/Makefile54
-rw-r--r--tools/testing/selftests/breakpoints/Makefile19
-rw-r--r--tools/testing/selftests/cpu-hotplug/Makefile14
-rw-r--r--tools/testing/selftests/cpu-hotplug/cpu-on-off-test.sh (renamed from tools/testing/selftests/cpu-hotplug/on-off-test.sh)0
-rw-r--r--tools/testing/selftests/efivarfs/Makefile16
-rw-r--r--tools/testing/selftests/exec/execveat.c10
-rw-r--r--tools/testing/selftests/firmware/Makefile43
-rw-r--r--tools/testing/selftests/ftrace/Makefile13
-rw-r--r--tools/testing/selftests/ipc/Makefile19
-rw-r--r--tools/testing/selftests/kcmp/Makefile13
-rw-r--r--tools/testing/selftests/memfd/Makefile17
-rw-r--r--tools/testing/selftests/memory-hotplug/Makefile14
-rw-r--r--tools/testing/selftests/memory-hotplug/mem-on-off-test.sh (renamed from tools/testing/selftests/memory-hotplug/on-off-test.sh)0
-rw-r--r--tools/testing/selftests/mount/Makefile12
-rw-r--r--tools/testing/selftests/mqueue/Makefile18
-rw-r--r--tools/testing/selftests/net/Makefile20
-rw-r--r--tools/testing/selftests/ptrace/Makefile16
-rw-r--r--tools/testing/selftests/size/Makefile12
-rw-r--r--tools/testing/selftests/sysctl/Makefile17
-rw-r--r--tools/testing/selftests/timers/Makefile12
-rw-r--r--tools/testing/selftests/user/Makefile12
-rw-r--r--tools/testing/selftests/vm/Makefile11
23 files changed, 326 insertions, 50 deletions
diff --git a/Makefile b/Makefile
index c46e15ac4fa..aa4fb5fae0f 100644
--- a/Makefile
+++ b/Makefile
@@ -1098,12 +1098,21 @@ headers_check: headers_install
$(Q)$(MAKE) $(hdr-inst)=arch/$(hdr-arch)/include/uapi/asm $(hdr-dst) HDRCHECK=1
# ---------------------------------------------------------------------------
-# Kernel selftest
+# Kernel selftest targets
+
+# Default base path for kselftest install
+INSTALL_KSFT_PATH = $(INSTALL_MOD_PATH)/lib/kselftest/$(KERNELRELEASE)
+export INSTALL_KSFT_PATH
PHONY += kselftest
kselftest:
$(Q)$(MAKE) -C tools/testing/selftests run_tests
+# Kernel selftest install
+PHONY += kselftest_install
+kselftest_install:
+ $(Q)$(MAKE) -C tools/testing/selftests install
+
# ---------------------------------------------------------------------------
# Modules
@@ -1312,6 +1321,9 @@ help:
@echo ' Build, install, and boot kernel before'
@echo ' running kselftest on it'
@echo ''
+ @echo ' kselftest_install - Install Kselftests to INSTALL_KSFT_PATH'
+ @echo ' default: $(INSTALL_MOD_PATH)/lib/kselftest/$(KERNELRELEASE)'
+ @echo ''
@echo 'Kernel packaging:'
@$(MAKE) $(build)=$(package-dir) help
@echo ''
diff --git a/tools/testing/selftests/Makefile b/tools/testing/selftests/Makefile
index 4e511221a0c..45661ce390f 100644
--- a/tools/testing/selftests/Makefile
+++ b/tools/testing/selftests/Makefile
@@ -22,15 +22,67 @@ TARGETS += vm
TARGETS_HOTPLUG = cpu-hotplug
TARGETS_HOTPLUG += memory-hotplug
+# Used in only run_tests target when make kselftest is run in
+# top level source directory
+ifeq "$(origin TARGETS)" "command line"
+no_install_run=1
+endif
+
+ifdef INSTALL_KSFT_PATH
+KSELFTEST=$(INSTALL_KSFT_PATH)/kselftest.sh
+export KSELFTEST
+# TODO add install target for SKIP_INSTALL_TARGETS
+SKIP_INSTALL_TARGETS = exec powerpc
+INSTALL_TARGETS = $(filter-out $(SKIP_INSTALL_TARGETS),$(TARGETS)) ipc
+else
+no_install_run=1
+endif
+
+INSTALL_KSFT_ERR = "Run make kselftest_install in top level source directory"
+
all:
for TARGET in $(TARGETS); do \
make -C $$TARGET; \
done;
-run_tests: all
+install:
+ifdef INSTALL_KSFT_PATH
+ rm -rf $(INSTALL_KSFT_PATH)
+ mkdir -p $(INSTALL_KSFT_PATH)
+
+ make all
+ @echo "#!/bin/sh\n# Kselftest Run Tests ...." >> $(KSELFTEST)
+ @echo "# This file is generated by kselftest_install" >> $(KSELFTEST)
+ @echo "# Please don't change it !!\n" >> $(KSELFTEST)
+ @echo "echo \"============================\"" >> $(KSELFTEST)
+ for TARGET in $(INSTALL_TARGETS); do \
+ echo "Installing $$TARGET"; \
+ echo "echo \"Start $$TARGET test ....\"" >> $(KSELFTEST); \
+ make -C $$TARGET install; \
+ echo "echo \"End $$TARGET test ....\"" >> $(KSELFTEST); \
+ echo "echo \"============================\"" >> $(KSELFTEST); \
+ done;
+ chmod +x $(KSELFTEST)
+else
+ @echo $(INSTALL_KSFT_ERR)
+endif
+
+run_tests:
+ifndef no_install_run
+# ifdef INSTALL_KSFT_PATH
+ make install
+ @cd $(INSTALL_KSFT_PATH); ./kselftest.sh; cd -
+# invoke run_tests for SKIP_INSTALL_TARGETS
+ for TARGET in $(SKIP_INSTALL_TARGETS); do \
+ make -C $$TARGET run_tests; \
+ done;
+# endif
+else
+ make all
for TARGET in $(TARGETS); do \
make -C $$TARGET run_tests; \
done;
+endif
hotplug:
for TARGET in $(TARGETS_HOTPLUG); do \
diff --git a/tools/testing/selftests/breakpoints/Makefile b/tools/testing/selftests/breakpoints/Makefile
index e18b42b254a..c738d4c99c8 100644
--- a/tools/testing/selftests/breakpoints/Makefile
+++ b/tools/testing/selftests/breakpoints/Makefile
@@ -8,6 +8,7 @@ ifeq ($(ARCH),x86_64)
ARCH := x86
endif
+TEST_STR = ./breakpoint_test || echo 'breakpoints selftests: [FAIL]'
all:
ifeq ($(ARCH),x86)
@@ -16,8 +17,22 @@ else
echo "Not an x86 target, can't build breakpoints selftests"
endif
-run_tests:
- @./breakpoint_test || echo "breakpoints selftests: [FAIL]"
+install:
+ifdef INSTALL_KSFT_PATH
+ifeq ($(ARCH),x86)
+ install ./breakpoint_test $(INSTALL_KSFT_PATH)
+ @echo "$(TEST_STR)" >> $(KSELFTEST)
+else
+ @echo "Not an x86 target, unable to install breakpoints selftests"
+endif
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
+
+run_tests: all
+ifeq ($(ARCH),x86)
+ @$(TEST_STR)
+endif
clean:
rm -fr breakpoint_test
diff --git a/tools/testing/selftests/cpu-hotplug/Makefile b/tools/testing/selftests/cpu-hotplug/Makefile
index e9c28d8dc84..c168033701e 100644
--- a/tools/testing/selftests/cpu-hotplug/Makefile
+++ b/tools/testing/selftests/cpu-hotplug/Makefile
@@ -1,9 +1,19 @@
+TEST_STR=/bin/bash ./cpu-on-off-test.sh || echo 'cpu-hotplug selftests: [FAIL]'
+
all:
+install:
+ifdef INSTALL_KSFT_PATH
+ install ./cpu-on-off-test.sh $(INSTALL_KSFT_PATH)/cpu-on-off-test.sh
+ @echo "$(TEST_STR)" >> $(KSELFTEST)
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
+
run_tests:
- @/bin/bash ./on-off-test.sh || echo "cpu-hotplug selftests: [FAIL]"
+ @$(TEST_STR)
run_full_test:
- @/bin/bash ./on-off-test.sh -a || echo "cpu-hotplug selftests: [FAIL]"
+ @/bin/bash ./cpu-on-off-test.sh -a || echo "cpu-hotplug selftests: [FAIL]"
clean:
diff --git a/tools/testing/selftests/cpu-hotplug/on-off-test.sh b/tools/testing/selftests/cpu-hotplug/cpu-on-off-test.sh
index 98b1d6565f2..98b1d6565f2 100644
--- a/tools/testing/selftests/cpu-hotplug/on-off-test.sh
+++ b/tools/testing/selftests/cpu-hotplug/cpu-on-off-test.sh
diff --git a/tools/testing/selftests/efivarfs/Makefile b/tools/testing/selftests/efivarfs/Makefile
index 29e8c6bc81b..c5f389d4152 100644
--- a/tools/testing/selftests/efivarfs/Makefile
+++ b/tools/testing/selftests/efivarfs/Makefile
@@ -3,10 +3,22 @@ CFLAGS = -Wall
test_objs = open-unlink create-read
-all: $(test_objs)
+TEST_STR = /bin/bash ./efivarfs.sh || echo 'efivarfs selftests: [FAIL]'
+
+all:
+ gcc open-unlink.c -o open-unlink
+ gcc create-read.c -o create-read
+
+install:
+ifdef INSTALL_KSFT_PATH
+ install ./efivarfs.sh $(test_objs) $(INSTALL_KSFT_PATH)
+ @echo "$(TEST_STR)" >> $(KSELFTEST)
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
run_tests: all
- @/bin/bash ./efivarfs.sh || echo "efivarfs selftests: [FAIL]"
+ @$(TEST_STR)
clean:
rm -f $(test_objs)
diff --git a/tools/testing/selftests/exec/execveat.c b/tools/testing/selftests/exec/execveat.c
index e238c9559ca..8d5d1d2ee7c 100644
--- a/tools/testing/selftests/exec/execveat.c
+++ b/tools/testing/selftests/exec/execveat.c
@@ -30,7 +30,7 @@ static int execveat_(int fd, const char *path, char **argv, char **envp,
#ifdef __NR_execveat
return syscall(__NR_execveat, fd, path, argv, envp, flags);
#else
- errno = -ENOSYS;
+ errno = ENOSYS;
return -1;
#endif
}
@@ -234,6 +234,14 @@ static int run_tests(void)
int fd_cloexec = open_or_die("execveat", O_RDONLY|O_CLOEXEC);
int fd_script_cloexec = open_or_die("script", O_RDONLY|O_CLOEXEC);
+ /* Check if we have execveat at all, and bail early if not */
+ errno = 0;
+ execveat_(-1, NULL, NULL, NULL, 0);
+ if (errno == ENOSYS) {
+ printf("[FAIL] ENOSYS calling execveat - no kernel support?\n");
+ return 1;
+ }
+
/* Change file position to confirm it doesn't affect anything */
lseek(fd, 10, SEEK_SET);
diff --git a/tools/testing/selftests/firmware/Makefile b/tools/testing/selftests/firmware/Makefile
index e23cce0bbc3..0bdc25b0de2 100644
--- a/tools/testing/selftests/firmware/Makefile
+++ b/tools/testing/selftests/firmware/Makefile
@@ -1,25 +1,34 @@
# Makefile for firmware loading selftests
# No binaries, but make sure arg-less "make" doesn't trigger "run_tests"
+
+__fw_filesystem:
+fw_filesystem = if /bin/sh ./fw_filesystem.sh ; then
+fw_filesystem += echo 'fw_filesystem: ok';
+fw_filesystem += else echo 'fw_filesystem: [FAIL]';
+fw_filesystem += fi
+
+__fw_userhelper:
+fw_userhelper = if /bin/sh ./fw_userhelper.sh ; then
+fw_userhelper += echo 'fw_userhelper: ok';
+fw_userhelper += else
+fw_userhelper += echo 'fw_userhelper: [FAIL]';
+fw_userhelper += fi
+
all:
-fw_filesystem:
- @if /bin/sh ./fw_filesystem.sh ; then \
- echo "fw_filesystem: ok"; \
- else \
- echo "fw_filesystem: [FAIL]"; \
- exit 1; \
- fi
-
-fw_userhelper:
- @if /bin/sh ./fw_userhelper.sh ; then \
- echo "fw_userhelper: ok"; \
- else \
- echo "fw_userhelper: [FAIL]"; \
- exit 1; \
- fi
-
-run_tests: all fw_filesystem fw_userhelper
+install:
+ifdef INSTALL_KSFT_PATH
+ install ./fw_filesystem.sh ./fw_userhelper.sh $(INSTALL_KSFT_PATH)
+ @echo "$(fw_filesystem)" >> $(KSELFTEST)
+ @echo "$(fw_userhelper)" >> $(KSELFTEST)
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
+
+run_tests:
+ @$(fw_filesystem)
+ @$(fw_userhelper)
# Nothing to clean up.
clean:
diff --git a/tools/testing/selftests/ftrace/Makefile b/tools/testing/selftests/ftrace/Makefile
index 76cc9f15626..c5c77584af8 100644
--- a/tools/testing/selftests/ftrace/Makefile
+++ b/tools/testing/selftests/ftrace/Makefile
@@ -1,7 +1,18 @@
+TEST_STR = /bin/sh ./ftracetest || echo 'ftrace selftests: [FAIL]'
+
all:
+install:
+ifdef INSTALL_KSFT_PATH
+ install ./ftracetest $(INSTALL_KSFT_PATH)
+ @cp -r test.d $(INSTALL_KSFT_PATH)
+ echo "$(TEST_STR)" >> $(KSELFTEST)
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
+
run_tests:
- @/bin/sh ./ftracetest || echo "ftrace selftests: [FAIL]"
+ @$(TEST_STR)
clean:
rm -rf logs/*
diff --git a/tools/testing/selftests/ipc/Makefile b/tools/testing/selftests/ipc/Makefile
index 74bbefdeaf4..67ea3af961b 100644
--- a/tools/testing/selftests/ipc/Makefile
+++ b/tools/testing/selftests/ipc/Makefile
@@ -11,6 +11,8 @@ endif
CFLAGS += -I../../../../usr/include/
+TEST_STR = ./msgque_test || echo 'ipc msgque test: [FAIL]'
+
all:
ifeq ($(ARCH),x86)
gcc $(CFLAGS) msgque.c -o msgque_test
@@ -18,8 +20,23 @@ else
echo "Not an x86 target, can't build msgque selftest"
endif
+install:
+ifdef INSTALL_KSFT_PATH
+ifeq ($(ARCH),x86)
+ make all
+ install ./msgque_test $(INSTALL_KSFT_PATH)
+ @echo "$(TEST_STR)" >> $(KSELFTEST)
+else
+ @echo "Not an x86 target, unable to install ipc msgque selftests"
+endif
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
+
run_tests: all
- ./msgque_test
+ifeq ($(ARCH),x86)
+ @$(TEST_STR)
+endif
clean:
rm -fr ./msgque_test
diff --git a/tools/testing/selftests/kcmp/Makefile b/tools/testing/selftests/kcmp/Makefile
index ff0eefdc6ce..46267c1c4d2 100644
--- a/tools/testing/selftests/kcmp/Makefile
+++ b/tools/testing/selftests/kcmp/Makefile
@@ -1,10 +1,21 @@
CC := $(CROSS_COMPILE)$(CC)
CFLAGS += -I../../../../usr/include/
+TEST_STR = ./kcmp_test || echo 'kcmp_test: [FAIL]'
+
all: kcmp_test
+install:
+ifdef INSTALL_KSFT_PATH
+ install ./kcmp_test $(INSTALL_KSFT_PATH)
+ @echo "$(TEST_STR)" >> $(KSELFTEST)
+ @echo rm -f kcmp-test-file >> $(KSELFTEST)
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
+
run_tests: all
- @./kcmp_test || echo "kcmp_test: [FAIL]"
+ @$(TEST_STR)
clean:
$(RM) kcmp_test kcmp-test-file
diff --git a/tools/testing/selftests/memfd/Makefile b/tools/testing/selftests/memfd/Makefile
index b80cd10d53b..23c84bf302c 100644
--- a/tools/testing/selftests/memfd/Makefile
+++ b/tools/testing/selftests/memfd/Makefile
@@ -2,19 +2,30 @@ CFLAGS += -D_FILE_OFFSET_BITS=64
CFLAGS += -I../../../../include/uapi/
CFLAGS += -I../../../../include/
+INSTALL_PROGS = memfd_test fuse_test run_fuse_test.sh
+MEMFD_TEST_STR = ./memfd_test || echo 'memfd_test: [FAIL]'
+FUSE_TEST_STR = ./run_fuse_test.sh || echo 'fuse_test: [FAIL]'
+
all:
gcc $(CFLAGS) memfd_test.c -o memfd_test
+install:
+ifdef INSTALL_KSFT_PATH
+ install $(INSTALL_PROGS) $(INSTALL_KSFT_PATH)
+ @echo "$(MEMFD_TEST_STR)" >> $(KSELFTEST)
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
+
run_tests: all
- gcc $(CFLAGS) memfd_test.c -o memfd_test
- @./memfd_test || echo "memfd_test: [FAIL]"
+ @$(MEMFD_TEST_STR)
build_fuse:
gcc $(CFLAGS) fuse_mnt.c `pkg-config fuse --cflags --libs` -o fuse_mnt
gcc $(CFLAGS) fuse_test.c -o fuse_test
run_fuse: build_fuse
- @./run_fuse_test.sh || echo "fuse_test: [FAIL]"
+ @$(FUSE_TEST_STR)
clean:
$(RM) memfd_test fuse_test
diff --git a/tools/testing/selftests/memory-hotplug/Makefile b/tools/testing/selftests/memory-hotplug/Makefile
index d46b8d489cd..3bb0a99c23e 100644
--- a/tools/testing/selftests/memory-hotplug/Makefile
+++ b/tools/testing/selftests/memory-hotplug/Makefile
@@ -1,9 +1,19 @@
+TEST_STR=/bin/bash ./mem-on-off-test.sh -r 2 || echo 'memory-hotplug selftests: [FAIL]'
+
all:
+install:
+ifdef INSTALL_KSFT_PATH
+ install ./mem-on-off-test.sh $(INSTALL_KSFT_PATH)/mem-on-off-test.sh
+ @echo "$(TEST_STR)" >> $(KSELFTEST) >> $(KSELFTEST)
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
+
run_tests:
- @/bin/bash ./on-off-test.sh -r 2 || echo "memory-hotplug selftests: [FAIL]"
+ @$(TEST_STR)
run_full_test:
- @/bin/bash ./on-off-test.sh || echo "memory-hotplug selftests: [FAIL]"
+ @/bin/bash ./mem-on-off-test.sh || echo "memory-hotplug selftests: [FAIL]"
clean:
diff --git a/tools/testing/selftests/memory-hotplug/on-off-test.sh b/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
index 6cddde0b96f..6cddde0b96f 100644
--- a/tools/testing/selftests/memory-hotplug/on-off-test.sh
+++ b/tools/testing/selftests/memory-hotplug/mem-on-off-test.sh
diff --git a/tools/testing/selftests/mount/Makefile b/tools/testing/selftests/mount/Makefile
index 337d853c2b7..422a2d8fc1a 100644
--- a/tools/testing/selftests/mount/Makefile
+++ b/tools/testing/selftests/mount/Makefile
@@ -1,5 +1,7 @@
# Makefile for mount selftests.
+TEST_STR = if [ -f /proc/self/uid_map ] ; then ./unprivileged-remount-test ; fi
+
all: unprivileged-remount-test
unprivileged-remount-test: unprivileged-remount-test.c
@@ -7,7 +9,15 @@ unprivileged-remount-test: unprivileged-remount-test.c
# Allow specific tests to be selected.
test_unprivileged_remount: unprivileged-remount-test
- @if [ -f /proc/self/uid_map ] ; then ./unprivileged-remount-test ; fi
+ @$(TEST_STR)
+
+install:
+ifdef INSTALL_KSFT_PATH
+ install ./unprivileged-remount-test $(INSTALL_KSFT_PATH)
+ @echo "$(TEST_STR)" >> $(KSELFTEST)
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
run_tests: all test_unprivileged_remount
diff --git a/tools/testing/selftests/mqueue/Makefile b/tools/testing/selftests/mqueue/Makefile
index 8056e2e68fa..813c9e2c75d 100644
--- a/tools/testing/selftests/mqueue/Makefile
+++ b/tools/testing/selftests/mqueue/Makefile
@@ -1,10 +1,22 @@
+MQ_OPEN_TEST_STR = ./mq_open_tests /test1 || echo 'mq_open_tests: [FAIL]'
+MQ_PERF_TEST_STR = ./mq_perf_tests || echo 'mq_perf_tests: [FAIL]'
+
all:
gcc -O2 mq_open_tests.c -o mq_open_tests -lrt
gcc -O2 -o mq_perf_tests mq_perf_tests.c -lrt -lpthread -lpopt
-run_tests:
- @./mq_open_tests /test1 || echo "mq_open_tests: [FAIL]"
- @./mq_perf_tests || echo "mq_perf_tests: [FAIL]"
+install:
+ifdef INSTALL_KSFT_PATH
+ install ./mq_open_tests ./mq_perf_tests $(INSTALL_KSFT_PATH)
+ @echo "$(MQ_OPEN_TEST_STR)" >> $(KSELFTEST)
+ @echo "$(MQ_PERF_TEST_STR)" >> $(KSELFTEST)
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
+
+run_tests: all
+ @$(MQ_OPEN_TEST_STR)
+ @$(MQ_PERF_TEST_STR)
clean:
rm -f mq_open_tests mq_perf_tests
diff --git a/tools/testing/selftests/net/Makefile b/tools/testing/selftests/net/Makefile
index 62f22cc9941..a1a825336c4 100644
--- a/tools/testing/selftests/net/Makefile
+++ b/tools/testing/selftests/net/Makefile
@@ -6,14 +6,28 @@ CFLAGS = -Wall -O2 -g
CFLAGS += -I../../../../usr/include/
NET_PROGS = socket psock_fanout psock_tpacket
+INSTALL_PROGS = run_netsocktests run_afpackettests test_bpf.sh $(NET_PROGS)
+NETSOCK_TEST_STR = /bin/sh ./run_netsocktests || echo 'sockettests: [FAIL]'
+AFPKT_TEST_STR = /bin/sh ./run_afpackettests || echo 'afpackettests: [FAIL]'
+BFP_TEST_STR = ./test_bpf.sh
all: $(NET_PROGS)
%: %.c
$(CC) $(CFLAGS) -o $@ $^
+install:
+ifdef INSTALL_KSFT_PATH
+ install $(INSTALL_PROGS) $(INSTALL_KSFT_PATH)
+ @echo "$(NETSOCK_TEST_STR)" >> $(KSELFTEST)
+ @echo "$(AFPKT_TEST_STR)" >> $(KSELFTEST)
+ @echo "$(BFP_TEST_STR)" >> $(KSELFTEST)
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
+
run_tests: all
- @/bin/sh ./run_netsocktests || echo "sockettests: [FAIL]"
- @/bin/sh ./run_afpackettests || echo "afpackettests: [FAIL]"
- ./test_bpf.sh
+ @$(NETSOCK_TEST_STR)
+ @$(AFPKT_TEST_STR)
+ @$(BFP_TEST_STR)
clean:
$(RM) $(NET_PROGS)
diff --git a/tools/testing/selftests/ptrace/Makefile b/tools/testing/selftests/ptrace/Makefile
index 47ae2d385ce..6fc352ca187 100644
--- a/tools/testing/selftests/ptrace/Makefile
+++ b/tools/testing/selftests/ptrace/Makefile
@@ -1,10 +1,20 @@
CFLAGS += -iquote../../../../include/uapi -Wall
-peeksiginfo: peeksiginfo.c
-all: peeksiginfo
+TEST_STR = ./peeksiginfo || echo 'peeksiginfo selftests: [FAIL]'
+
+all:
+ gcc peeksiginfo.c -o peeksiginfo
+
+install:
+ifdef INSTALL_KSFT_PATH
+ install ./peeksiginfo $(INSTALL_KSFT_PATH)
+ @echo "$(TEST_STR)" >> $(KSELFTEST)
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
clean:
rm -f peeksiginfo
run_tests: all
- @./peeksiginfo || echo "peeksiginfo selftests: [FAIL]"
+ @$(TEST_STR)
diff --git a/tools/testing/selftests/size/Makefile b/tools/testing/selftests/size/Makefile
index 04dc25e4fa9..a1478fafde4 100644
--- a/tools/testing/selftests/size/Makefile
+++ b/tools/testing/selftests/size/Makefile
@@ -1,12 +1,22 @@
CC = $(CROSS_COMPILE)gcc
+TEST_STR = ./get_size || echo 'get_size selftests: [FAIL]'
+
all: get_size
get_size: get_size.c
$(CC) -static -ffreestanding -nostartfiles -s $< -o $@
+install:
+ifdef INSTALL_KSFT_PATH
+ install ./get_size $(INSTALL_KSFT_PATH)
+ @echo "$(TEST_STR)" >> $(KSELFTEST)
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
+
run_tests: all
- ./get_size
+ @$(TEST_STR)
clean:
$(RM) get_size
diff --git a/tools/testing/selftests/sysctl/Makefile b/tools/testing/selftests/sysctl/Makefile
index 0a92adaf086..9119ef12b07 100644
--- a/tools/testing/selftests/sysctl/Makefile
+++ b/tools/testing/selftests/sysctl/Makefile
@@ -4,12 +4,25 @@
# No binaries, but make sure arg-less "make" doesn't trigger "run_tests".
all:
+INSTALL_PROGS = common_tests run_numerictests run_stringtests
+NUMERIC_TEST_STR = /bin/sh ./run_numerictests
+STRING_TEST_STR = /bin/sh ./run_stringtests
+
# Allow specific tests to be selected.
test_num:
- @/bin/sh ./run_numerictests
+ @$(NUMERIC_TEST_STR)
test_string:
- @/bin/sh ./run_stringtests
+ @$(STRING_TEST_STR)
+
+install: all
+ifdef INSTALL_KSFT_PATH
+ install $(INSTALL_PROGS) $(INSTALL_KSFT_PATH)
+ @echo "$(NUMERIC_TEST_STR)" >> $(KSELFTEST)
+ @echo "$(STRING_TEST_STR)" >> $(KSELFTEST)
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
run_tests: all test_num test_string
diff --git a/tools/testing/selftests/timers/Makefile b/tools/testing/selftests/timers/Makefile
index eb2859f4ad2..6c03e927ed3 100644
--- a/tools/testing/selftests/timers/Makefile
+++ b/tools/testing/selftests/timers/Makefile
@@ -1,8 +1,18 @@
+TEST_STR = ./posix_timers
+
all:
gcc posix_timers.c -o posix_timers -lrt
+install:
+ifdef INSTALL_KSFT_PATH
+ install ./posix_timers $(INSTALL_KSFT_PATH)
+ @echo "$(TEST_STR)" >> $(KSELFTEST)
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
+
run_tests: all
- ./posix_timers
+ @$(TEST_STR)
clean:
rm -f ./posix_timers
diff --git a/tools/testing/selftests/user/Makefile b/tools/testing/selftests/user/Makefile
index 12c9d15bab0..3d383084dba 100644
--- a/tools/testing/selftests/user/Makefile
+++ b/tools/testing/selftests/user/Makefile
@@ -1,7 +1,17 @@
# Makefile for user memory selftests
+TEST_STR = ./test_user_copy.sh
+
# No binaries, but make sure arg-less "make" doesn't trigger "run_tests"
all:
+install:
+ifdef INSTALL_KSFT_PATH
+ install ./test_user_copy.sh $(INSTALL_KSFT_PATH)
+ @echo "$(TEST_STR)" >> $(KSELFTEST)
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
+
run_tests: all
- ./test_user_copy.sh
+ @$(TEST_STR)
diff --git a/tools/testing/selftests/vm/Makefile b/tools/testing/selftests/vm/Makefile
index 077828c889f..fe9a2eaed28 100644
--- a/tools/testing/selftests/vm/Makefile
+++ b/tools/testing/selftests/vm/Makefile
@@ -4,13 +4,22 @@ CC = $(CROSS_COMPILE)gcc
CFLAGS = -Wall
BINARIES = hugepage-mmap hugepage-shm map_hugetlb thuge-gen hugetlbfstest
BINARIES += transhuge-stress
+TEST_STR = /bin/sh ./run_vmtests || echo 'vmtests: [FAIL]'
all: $(BINARIES)
%: %.c
$(CC) $(CFLAGS) -o $@ $^ -lrt
+install:
+ifdef INSTALL_KSFT_PATH
+ install run_vmtests $(BINARIES) $(INSTALL_KSFT_PATH)
+ @echo "$(TEST_STR)" >> $(KSELFTEST)
+else
+ @echo "Run make kselftest_install in top level source directory"
+endif
+
run_tests: all
- @/bin/sh ./run_vmtests || (echo "vmtests: [FAIL]"; exit 1)
+ @$(TEST_STR)
clean:
$(RM) $(BINARIES)