From: Sasha Levin <sashal@kernel.org>
To: Madhavan Srinivasan <maddy@linux.ibm.com>,
Michael Ellerman <mpe@ellerman.id.au>,
Shuah Khan <shuah@kernel.org>
Cc: Nicholas Piggin <npiggin@gmail.com>,
"Christophe Leroy (CS GROUP)" <chleroy@kernel.org>,
"Ritesh Harjani (IBM)" <ritesh.list@gmail.com>,
Shrikanth Hegde <sshegde@linux.ibm.com>,
linuxppc-dev@lists.ozlabs.org, linux-kselftest@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: [PATCH] selftests/powerpc: override EMIT_TESTS instead of the emit_tests rule
Date: Tue, 3 Nov 2026 18:23:07 -0500 [thread overview]
Message-ID: <20261103232307.1924618-3-sashal@kernel.org> (raw)
The powerpc Makefiles include lib.mk and then define their own
emit_tests rule, so every selftests build that includes powerpc warns,
on any architecture:
Makefile:60: warning: overriding recipe for target 'emit_tests'
../lib.mk:183: warning: ignoring old recipe for target 'emit_tests'
lib.mk used to keep the recipe in an EMIT_TESTS variable that Makefiles
could override, as they still do with RUN_TESTS, INSTALL_RULE and
CLEAN. Commit d4e59a536f50 ("selftests: Use runner.sh for emit
targets") dropped the variable, and commit 58b33e78a317
("selftests/powerpc: Fix emit_tests to work with run_kselftest.sh")
then replaced the powerpc EMIT_TESTS definitions with rules.
Bring EMIT_TESTS back in lib.mk and override it in the powerpc Makefiles
again. Mark the lib.mk recipe with '+', so that the powerpc sub-makes
still get the jobserver, as they did when $(MAKE) was in the rule
itself. The emitted test lists don't change.
Fixes: 58b33e78a317 ("selftests/powerpc: Fix emit_tests to work with run_kselftest.sh")
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
Checked with "make ARCH=powerpc emit_tests" in
tools/testing/selftests/powerpc, which lists the same 186 tests as
before, and with an x86_64 selftests install, whose kselftest-list.txt
doesn't change. make -j2 --jobserver-style=pipe doesn't warn about the
jobserver.
tools/testing/selftests/lib.mk | 6 +++++-
tools/testing/selftests/powerpc/Makefile | 3 ++-
tools/testing/selftests/powerpc/pmu/Makefile | 3 ++-
3 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/tools/testing/selftests/lib.mk b/tools/testing/selftests/lib.mk
index 881f13ee2c8ac..506cb26510e4d 100644
--- a/tools/testing/selftests/lib.mk
+++ b/tools/testing/selftests/lib.mk
@@ -179,11 +179,15 @@ else
$(error Error: set INSTALL_PATH to use install)
endif
-emit_tests:
+define EMIT_TESTS
for TEST in $(TEST_GEN_PROGS) $(TEST_CUSTOM_PROGS) $(TEST_PROGS); do \
BASENAME_TEST=`basename $$TEST`; \
echo "$(COLLECTION):$$BASENAME_TEST"; \
done
+endef
+
+emit_tests:
+ +$(EMIT_TESTS)
# define if isn't already. It is undefined in make O= case.
ifeq ($(RM),)
diff --git a/tools/testing/selftests/powerpc/Makefile b/tools/testing/selftests/powerpc/Makefile
index b175e94e1901d..aeab9366d09bf 100644
--- a/tools/testing/selftests/powerpc/Makefile
+++ b/tools/testing/selftests/powerpc/Makefile
@@ -56,11 +56,12 @@ override define INSTALL_RULE
done;
endef
-emit_tests:
+override define EMIT_TESTS
+@for TARGET in $(SUB_DIRS); do \
BUILD_TARGET=$(OUTPUT)/$$TARGET; \
$(MAKE) OUTPUT=$$BUILD_TARGET COLLECTION=$(COLLECTION)/$$TARGET -s -C $$TARGET $@;\
done;
+endef
override define CLEAN
+@for TARGET in $(SUB_DIRS); do \
diff --git a/tools/testing/selftests/powerpc/pmu/Makefile b/tools/testing/selftests/powerpc/pmu/Makefile
index 7e9dbf3d0d092..3aca10223f0ff 100644
--- a/tools/testing/selftests/powerpc/pmu/Makefile
+++ b/tools/testing/selftests/powerpc/pmu/Makefile
@@ -37,7 +37,7 @@ override define RUN_TESTS
done;
endef
-emit_tests:
+override define EMIT_TESTS
for TEST in $(TEST_GEN_PROGS); do \
BASENAME_TEST=`basename $$TEST`; \
echo "$(COLLECTION):$$BASENAME_TEST"; \
@@ -46,6 +46,7 @@ emit_tests:
BUILD_TARGET=$(OUTPUT)/$$TARGET; \
$(MAKE) OUTPUT=$$BUILD_TARGET COLLECTION=$(COLLECTION)/$$TARGET -s -C $$TARGET emit_tests; \
done;
+endef
DEFAULT_INSTALL_RULE := $(INSTALL_RULE)
override define INSTALL_RULE
--
2.53.0
next reply other threads:[~2026-11-03 23:23 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-03 23:23 Sasha Levin [this message]
2026-11-03 23:34 ` Michael Ellerman
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=20261103232307.1924618-3-sashal@kernel.org \
--to=sashal@kernel.org \
--cc=chleroy@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=maddy@linux.ibm.com \
--cc=mpe@ellerman.id.au \
--cc=npiggin@gmail.com \
--cc=ritesh.list@gmail.com \
--cc=shuah@kernel.org \
--cc=sshegde@linux.ibm.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®