Hi Shuah, I know this has been merged already, so this is just FYI and in case it helps anyone else who's tracking down build failures. Sorry I didn't reply before you merged it, I was on leave. Shuah Khan <skhan@xxxxxxxxxxxxxxxxxxx> writes: > Add kselftest-all target to build tests from the top level > Makefile. This is to simplify kselftest use-cases for CI and > distributions where build and test systems are different. > > Current kselftest target builds and runs tests on a development > system which is a developer use-case. > > Add kselftest-install target to install tests from the top level > Makefile. This is to simplify kselftest use-cases for CI and > distributions where build and test systems are different. > > This change addresses requests from developers and testers to add > support for installing kselftest from the main Makefile. > > In addition, make the install directory the same when install is > run using "make kselftest-install" or by running kselftest_install.sh. > Also fix the INSTALL_PATH variable conflict between main Makefile and > selftests Makefile. ... > diff --git a/tools/testing/selftests/Makefile b/tools/testing/selftests/Makefile > index c3feccb99ff5..bad18145ed1a 100644 > --- a/tools/testing/selftests/Makefile > +++ b/tools/testing/selftests/Makefile > @@ -171,9 +171,12 @@ run_pstore_crash: > # 1. output_dir=kernel_src > # 2. a separate output directory is specified using O= KBUILD_OUTPUT > # 3. a separate output directory is specified using KBUILD_OUTPUT > +# Avoid conflict with INSTALL_PATH set by the main Makefile > # > -INSTALL_PATH ?= $(BUILD)/install > -INSTALL_PATH := $(abspath $(INSTALL_PATH)) > +KSFT_INSTALL_PATH ?= $(BUILD)/kselftest_install This change broke all my CI, because the tests no longer install in the place it's expecting them :/ I can fix it by explicitly specifying the install path in my CI scripts. > +KSFT_INSTALL_PATH := $(abspath $(KSFT_INSTALL_PATH)) > +# Avoid changing the rest of the logic here and lib.mk. > +INSTALL_PATH := $(KSFT_INSTALL_PATH) But because the over-rideable variable changed from INSTALL_PATH to KSFT_INSTALL_PATH I will need to export both of them in order for my CI to work with old and new kernels. So to emulate the old behaviour for old & new kernels you need to do: # export KSFT_INSTALL_PATH=install # export INSTALL_PATH=install # make -C tools/testing/selftests install cheers