From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756446AbcA2Ox6 (ORCPT ); Fri, 29 Jan 2016 09:53:58 -0500 Received: from mail.kernel.org ([198.145.29.136]:38999 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756225AbcA2Ox5 (ORCPT ); Fri, 29 Jan 2016 09:53:57 -0500 Date: Fri, 29 Jan 2016 11:53:52 -0300 From: Arnaldo Carvalho de Melo To: "Wangnan (F)" Cc: jolsa@redhat.com, linux-kernel@vger.kernel.org, Jiri Olsa , Namhyung Kim Subject: Re: [PATCH update] perf build: Use feature dump file for build-test Message-ID: <20160129145352.GB17165@kernel.org> References: <1454068269-235999-1-git-send-email-wangnan0@huawei.com> <56AB62DB.1070807@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <56AB62DB.1070807@huawei.com> X-Url: http://acmel.wordpress.com User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Em Fri, Jan 29, 2016 at 09:02:19PM +0800, Wangnan (F) escreveu: > I tested this patch in my platform with > > $ make build-test > $ make -f ./tests/make > > All test cases passed for me. Thanks, I've testing this now, - Arnaldo > Thank you. > > On 2016/1/29 19:51, Wang Nan wrote: > >To prevent feature check run too many times, this patch utilizes > >previous introduced feature-dump make target and FEATURES_DUMP > >variable, makes sure the feature checkers run only once when doing > >build-test for normal test cases. > > > >However, since standard users doesn't reuse features dump result, we'd > >better give an option to check their behaviors. The above feature > >should be used to make build-test faster only. Only utilize it for > >build-test. > > > >Signed-off-by: Wang Nan > >Cc: Jiri Olsa > >Cc: Arnaldo Carvalho de Melo > >Cc: Namhyung Kim > >--- > > tools/perf/Makefile | 2 +- > > tools/perf/tests/make | 33 +++++++++++++++++++++++++++++++++ > > 2 files changed, 34 insertions(+), 1 deletion(-) > > > >diff --git a/tools/perf/Makefile b/tools/perf/Makefile > >index dcd9a70..e4ff0bd 100644 > >--- a/tools/perf/Makefile > >+++ b/tools/perf/Makefile > >@@ -78,7 +78,7 @@ clean: > > # The build-test target is not really parallel, don't print the jobs info: > > # > > build-test: > >- @$(MAKE) SHUF=1 -f tests/make --no-print-directory > >+ @$(MAKE) SHUF=1 -f tests/make REUSE_FEATURES_DUMP=1 --no-print-directory > > # > > # All other targets get passed through: > >diff --git a/tools/perf/tests/make b/tools/perf/tests/make > >index f918015..7f663f4 100644 > >--- a/tools/perf/tests/make > >+++ b/tools/perf/tests/make > >@@ -15,6 +15,7 @@ else > > PERF := . > > PERF_O := $(PERF) > > O_OPT := > >+FULL_O := $(shell readlink -f $(PERF_O) || echo $(PERF_O)) > > ifneq ($(O),) > > FULL_O := $(shell readlink -f $(O) || echo $(O)) > >@@ -313,11 +314,43 @@ make_kernelsrc_tools: > > (make -C ../../tools $(PARALLEL_OPT) $(K_O_OPT) perf) > $@ 2>&1 && \ > > test -x $(KERNEL_O)/tools/perf/perf && rm -f $@ || (cat $@ ; false) > >+FEATURES_DUMP_FILE := $(FULL_O)/BUILD_TEST_FEATURE_DUMP > >+FEATURES_DUMP_FILE_STATIC := $(FULL_O)/BUILD_TEST_FEATURE_DUMP_STATIC > >+ > > all: $(run) $(run_O) tarpkg make_kernelsrc make_kernelsrc_tools > > @echo OK > >+ @rm -f $(FEATURES_DUMP_FILE) $(FEATURES_DUMP_FILE_STATIC) > > out: $(run_O) > > @echo OK > >+ @rm -f $(FEATURES_DUMP_FILE) $(FEATURES_DUMP_FILE_STATIC) > >+ > >+ifeq ($(REUSE_FEATURES_DUMP),1) > >+$(FEATURES_DUMP_FILE): > >+ $(call clean) > >+ @cmd="cd $(PERF) && make FEATURE_DUMP_COPY=$@ $(O_OPT) feature-dump"; \ > >+ echo "- $@: $$cmd" && echo $$cmd && \ > >+ ( eval $$cmd ) > /dev/null 2>&1 > >+ > >+$(FEATURES_DUMP_FILE_STATIC): > >+ $(call clean) > >+ @cmd="cd $(PERF) && make FEATURE_DUMP_COPY=$@ $(O_OPT) LDFLAGS='-static' feature-dump"; \ > >+ echo "- $@: $$cmd" && echo $$cmd && \ > >+ ( eval $$cmd ) > /dev/null 2>&1 > >+ > >+# Add feature dump dependency for run/run_O targets > >+$(foreach t,$(run) $(run_O),$(eval \ > >+ $(t): $(if $(findstring make_static,$(t)),\ > >+ $(FEATURES_DUMP_FILE_STATIC),\ > >+ $(FEATURES_DUMP_FILE)))) > >+ > >+# Append 'FEATURES_DUMP=' option to all test cases. For example: > >+# make_no_libbpf: NO_LIBBPF=1 --> NO_LIBBPF=1 FEATURES_DUMP=/a/b/BUILD_TEST_FEATURE_DUMP > >+# make_static: LDFLAGS=-static --> LDFLAGS=-static FEATURES_DUMP=/a/b/BUILD_TEST_FEATURE_DUMP_STATIC > >+$(foreach t,$(run),$(if $(findstring make_static,$(t)),\ > >+ $(eval $(t) := $($(t)) FEATURES_DUMP=$(FEATURES_DUMP_FILE_STATIC)),\ > >+ $(eval $(t) := $($(t)) FEATURES_DUMP=$(FEATURES_DUMP_FILE)))) > >+endif > > .PHONY: all $(run) $(run_O) tarpkg clean make_kernelsrc make_kernelsrc_tools > > endif # ifndef MK >