All of lore.kernel.org
 help / color / mirror / Atom feed
From: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
To: Shuah Khan <shuahkh@osg.samsung.com>
Cc: gregkh@linuxfoundation.org, akpm@linux-foundation.org,
	mmarek@suse.cz, davem@davemloft.net, keescook@chromium.org,
	tranmanphong@gmail.com, dh.herrmann@gmail.com, hughd@google.com,
	bobby.prani@gmail.com, ebiederm@xmission.com,
	serge.hallyn@ubuntu.com, linux-kbuild@vger.kernel.org,
	linux-kernel@vger.kernel.org, linux-api@vger.kernel.org,
	netdev@vger.kernel.org,
	"yrl.pp-manager.tt@hitachi.com" <yrl.pp-manager.tt@hitachi.com>
Subject: Re: [PATCH v2 03/19] selftests: add install target to enable installing selftests
Date: Thu, 27 Nov 2014 14:45:11 +0900	[thread overview]
Message-ID: <5476BA67.6020305@hitachi.com> (raw)
In-Reply-To: <5e33b40696debde24fd04f6711e795a8860b7aee.1415735831.git.shuahkh@osg.samsung.com>

(2014/11/12 5:27), Shuah Khan wrote:
> Add a new make target to enable installing selftests. This
> new target will call 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. run_tests target runs the
> generated kselftest script to run tests when it is initiated
> from from "make kselftest" from top level source directory.
> 
> Approach:
> 
> make kselftest_target:
> -- exports kselftest INSTALL_KSFT_PATH
>    default $(INSTALL_MOD_PATH)/lib/kselftest/$(KERNELRELEASE)
> -- exports path for ksefltest.sh
> -- runs selftests make install target:
> 
> selftests make install target
> -- creates kselftest.sh script in install install dir
> -- runs install targets for all INSTALL_TARGETS
>    (Note: ftrace and powerpc aren't included in INSTALL_TARGETS,
>           to not add more content to patch v1 series. This work
>           will happen soon. In this series these two targets are
>           run after running the generated kselftest script, without
>           any regression in the way these tests are run with
>           "make kselftest" prior to this work.)
> -- install target can be run only from top level source dir.
> 
> Individual test make install targets:
> -- install test programs and/or scripts in install dir
> -- append to the ksefltest.sh file to add commands to run test
> -- install target can be run only from top level source dir.
> 
> Adds the following new ways to initiate selftests:
> -- Installing and running kselftest from install directory
>    by running  "make kselftest"
> -- Running kselftest script from install directory
> 
> Maintains the following ways to run tests:
> -- make -C tools/testing/selftests run_tests
> -- make -C tools/testing/selftests TARGETS=target run_tests
>    Ability specify targets: e.g TARGETS=net
> -- make run_tests from tools/testing/selftests
> -- make run_tests from individual test directories:
>    e.g: make run_tests in tools/testing/selftests/breakpoints
> 
> Signed-off-by: Shuah Khan <shuahkh@osg.samsung.com>
> ---
>  tools/testing/selftests/Makefile | 31 ++++++++++++++++++++++++++++++-
>  1 file changed, 30 insertions(+), 1 deletion(-)
> 
> diff --git a/tools/testing/selftests/Makefile b/tools/testing/selftests/Makefile
> index 45f145c..b9bdc1d 100644
> --- a/tools/testing/selftests/Makefile
> +++ b/tools/testing/selftests/Makefile
> @@ -16,6 +16,10 @@ TARGETS += sysctl
>  TARGETS += firmware
>  TARGETS += ftrace
>  
> +INSTALL_TARGETS = breakpoints cpu-hotplug efivarfs firmware ipc
> +INSTALL_TARGETS += kcmp memfd memory-hotplug mqueue mount net
> +INSTALL_TARGETS += ptrace sysctl timers user vm
> +
>  TARGETS_HOTPLUG = cpu-hotplug
>  TARGETS_HOTPLUG += memory-hotplug
>  

I think KSELFTEST itself should be defined here, since that is not
a parameter.

> @@ -24,10 +28,35 @@ all:
>  		make -C $$TARGET; \
>  	done;
>  
> -run_tests: all
> +install:
> +ifdef INSTALL_KSFT_PATH
> +	make all
> +	@echo #!/bin/sh\n# Kselftest Run Tests .... >> $(KSELFTEST)
> +	@echo # This file is generated during kselftest_install >> $(KSELFTEST)
> +	@echo # Please don't change it !!\n  >> $(KSELFTEST)
> +	@echo echo ============================== >> $(KSELFTEST)
> +	for TARGET in $(INSTALL_TARGETS); do \
> +		echo Installing $$TARGET; \
> +		make -C $$TARGET install; \

Please pass O= option and others here.

> +	done;
> +	chmod +x $(KSELFTEST)
> +else
> +	@echo Run make kselftest_install in top level source directory
> +endif
> +
> +run_tests:
> +ifdef INSTALL_KSFT_PATH
> +	@cd $(INSTALL_KSFT_PATH); ./kselftest.sh; cd -

We'd better use some macro instead of ./kselftest.sh?

Thank you,

> +# TODO: include ftrace and powerpc in install targets
> +	for TARGET in ftrace powerpc; do \
> +		make -C $$TARGET run_tests; \
> +	done;
> +else
> +	make all
>  	for TARGET in $(TARGETS); do \
>  		make -C $$TARGET run_tests; \
>  	done;
> +endif
>  
>  hotplug:
>  	for TARGET in $(TARGETS_HOTPLUG); do \
> 


-- 
Masami HIRAMATSU
Software Platform Research Dept. Linux Technology Center
Hitachi, Ltd., Yokohama Research Laboratory
E-mail: masami.hiramatsu.pt@hitachi.com



  reply	other threads:[~2014-11-27  5:45 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-11 20:27 [PATCH v2 00/19] kselftest install target feature Shuah Khan
2014-11-11 20:27 ` [PATCH v2 01/19] selftests/user: move test out of Makefile into a shell script Shuah Khan
2014-11-11 20:27 ` [PATCH v2 02/19] kbuild: kselftest_install - add a new make target to install selftests Shuah Khan
2014-11-19 15:59   ` Shuah Khan
2014-11-27  5:32   ` Masami Hiramatsu
2014-12-01 16:27     ` Shuah Khan
     [not found]   ` <a2344d4df903d673afe1631118f40917f773cc9a.1415735831.git.shuahkh-JPH+aEBZ4P+UEJcrhfAQsw@public.gmane.org>
2014-12-01 15:47     ` Michal Marek
2014-12-01 15:47       ` Michal Marek
2014-12-01 16:39       ` Shuah Khan
2014-12-03 12:09         ` Michal Marek
2014-12-03 14:14           ` Shuah Khan
2014-11-11 20:27 ` [PATCH v2 03/19] selftests: add install target to enable installing selftests Shuah Khan
2014-11-27  5:45   ` Masami Hiramatsu [this message]
2014-12-01 16:16     ` Shuah Khan
2014-11-11 20:27 ` [PATCH v2 04/19] selftests/breakpoints: add install target to enable installing test Shuah Khan
2014-11-11 20:27 ` [PATCH v2 05/19] selftests/cpu-hotplug: " Shuah Khan
2014-11-11 20:27 ` [PATCH v2 06/19] selftests/efivarfs: " Shuah Khan
2014-11-11 20:27 ` [PATCH v2 07/19] selftests/firmware: " Shuah Khan
     [not found]   ` <1d2d13556ddbbbbb13989cdcb08447909bc4afaf.1415735831.git.shuahkh-JPH+aEBZ4P+UEJcrhfAQsw@public.gmane.org>
2014-11-11 21:29     ` Kees Cook
2014-11-11 21:29       ` Kees Cook
2014-11-12  1:06       ` Shuah Khan
     [not found]         ` <5462B2A3.9000007-JPH+aEBZ4P+UEJcrhfAQsw@public.gmane.org>
2014-11-19 16:13           ` Shuah Khan
2014-11-19 16:13             ` Shuah Khan
2014-11-11 20:27 ` [PATCH v2 08/19] selftests/ipc: " Shuah Khan
2014-11-11 20:27 ` [PATCH v2 09/19] selftests/kcmp: " Shuah Khan
2014-11-11 20:27 ` [PATCH v2 10/19] selftests/memfd: " Shuah Khan
2014-11-11 20:27 ` [PATCH v2 11/19] selftests/memory-hotplug: " Shuah Khan
2014-11-27  5:49   ` Masami Hiramatsu
2014-12-01 16:12     ` Shuah Khan
2014-11-11 20:27 ` [PATCH v2 12/19] selftests/mount: " Shuah Khan
2014-11-11 20:27 ` [PATCH v2 13/19] selftests/mqueue: " Shuah Khan
2014-11-11 20:27 ` [PATCH v2 14/19] selftests/net: " Shuah Khan
     [not found] ` <cover.1415735831.git.shuahkh-JPH+aEBZ4P+UEJcrhfAQsw@public.gmane.org>
2014-11-11 20:27   ` [PATCH v2 15/19] selftests/ptrace: " Shuah Khan
2014-11-11 20:27     ` Shuah Khan
2014-11-11 20:27 ` [PATCH v2 16/19] selftests/sysctl: " Shuah Khan
2014-11-11 20:27 ` [PATCH v2 17/19] selftests/timers: " Shuah Khan
2014-11-11 20:27 ` [PATCH v2 18/19] selftests/vm: " Shuah Khan
2014-11-11 20:27 ` [PATCH v2 19/19] selftests/user: " Shuah Khan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5476BA67.6020305@hitachi.com \
    --to=masami.hiramatsu.pt@hitachi.com \
    --cc=akpm@linux-foundation.org \
    --cc=bobby.prani@gmail.com \
    --cc=davem@davemloft.net \
    --cc=dh.herrmann@gmail.com \
    --cc=ebiederm@xmission.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=hughd@google.com \
    --cc=keescook@chromium.org \
    --cc=linux-api@vger.kernel.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mmarek@suse.cz \
    --cc=netdev@vger.kernel.org \
    --cc=serge.hallyn@ubuntu.com \
    --cc=shuahkh@osg.samsung.com \
    --cc=tranmanphong@gmail.com \
    --cc=yrl.pp-manager.tt@hitachi.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.