Re: [PATCH v3 00/20] kselftest install target feature
From: Shuah Khan <hidden>
Date: 2014-12-29 15:25:00
Also in:
linux-api, linux-kbuild, lkml
On 12/28/2014 09:53 PM, Michael Ellerman wrote:
On Wed, 2014-12-24 at 09:27 -0700, Shuah Khan wrote:quoted
This patch series adds a new kselftest_install make target to enable selftest install. When make kselftest_install is run, selftests are installed on the system. A new install target is added to selftests Makefile which will install targets for the tests that are specified in INSTALL_TARGETS. During install, a script is generated to run tests that are installed. This script will be installed in the selftest install directory. Individual test Makefiles are changed to add to the script. This will allow new tests to add install and run test commands to the generated kselftest script. kselftest target now depends on kselftest_install and runs the generated kselftest script to reduce duplicate work and for common look and feel when running tests. This approach leverages and extends the existing framework that uses makefile targets to implement run_tests and adds install target. This will scale well as new tests get added and makes it easier for test writers to add install target at the same time new test gets added. This v3 series reduces duplicate code to generate script in indiviual test Makefiles and consolidates support in selftests main Makefile. In the main Makefile, it does minimal work to set and export install path. In this series exec and powerpc tests are not included in the install, this work will be done in future patches. exec and powerpc are still run when make kselftest is invoked.Any particular reason you excluded the powerpc tests? Going by a quick count, powerpc has 32 of the 54 self tests, ie. more than half.
No particular reason other than not having a good way to test the changes I need to make. It does have sub-directory structure with multiple makefiles underneath. I would like to work on this after this patch series gets in or maybe you can help out on powerpc changes if you like.
Sorry I didn't get a chance to review v1 or v2, but is this really the best solution we can come up with? It seems to involve a lot of boiler plate getting repeated in every Makefile.
This approach extends the existing approach to use makefile targets as a means to support running tests. Also it gives full control to the individual test developer in making changes to the targets as needed without conflicts with work that is in progress on other tests. There isn't a whole lot of boiler plating code repeated as such in individual makefiles. They all add their specific targets to the main script. -- Shuah -- Shuah Khan Sr. Linux Kernel Developer Open Source Innovation Group Samsung Research America (Silicon Valley) shuahkh-JPH+aEBZ4P+UEJcrhfAQsw@public.gmane.org | (970) 217-8978