Message ID | 471a73600bf9f59a59484726f50f81d7f54f4b2f.1580367152.git.sandipan@linux.ibm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | selftests: vm: Build fixes for powerpc64 | expand |
Sandipan Das <sandipan@linux.ibm.com> writes: > Independent builds of the vm selftests is currently broken > because commit 7549b3364201 overrides the value of ARCH with > the machine name from uname. This does not always match the > architecture names used for tasks like header installation. > > E.g. for building tests on powerpc64, we need ARCH=powerpc > and not ARCH=ppc64 or ARCH=ppc64le. Otherwise, the build > fails as shown below. > > $ uname -m > ppc64le > > $ make -C tools/testing/selftests/vm > make: Entering directory '/home/sandipan/linux/tools/testing/selftests/vm' > make --no-builtin-rules ARCH=ppc64le -C ../../../.. headers_install > make[1]: Entering directory '/home/sandipan/linux' > Makefile:653: arch/ppc64le/Makefile: No such file or directory > make[1]: *** No rule to make target 'arch/ppc64le/Makefile'. Stop. > make[1]: Leaving directory '/home/sandipan/linux' > ../lib.mk:50: recipe for target 'khdr' failed > make: *** [khdr] Error 2 > make: Leaving directory '/home/sandipan/linux/tools/testing/selftests/vm' > > Fixes: 7549b3364201 ("selftests: vm: Build/Run 64bit tests only on 64bit arch") > Signed-off-by: Sandipan Das <sandipan@linux.ibm.com> > --- > tools/testing/selftests/vm/Makefile | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) Tested-by: Michael Ellerman <mpe@ellerman.id.au> cheers > diff --git a/tools/testing/selftests/vm/Makefile b/tools/testing/selftests/vm/Makefile > index 7f9a8a8c31da..3f2e2f0ccbc9 100644 > --- a/tools/testing/selftests/vm/Makefile > +++ b/tools/testing/selftests/vm/Makefile > @@ -1,7 +1,7 @@ > # SPDX-License-Identifier: GPL-2.0 > # Makefile for vm selftests > uname_M := $(shell uname -m 2>/dev/null || echo not) > -ARCH ?= $(shell echo $(uname_M) | sed -e 's/aarch64.*/arm64/') > +MACHINE ?= $(shell echo $(uname_M) | sed -e 's/aarch64.*/arm64/') > > CFLAGS = -Wall -I ../../../../usr/include $(EXTRA_CFLAGS) > LDLIBS = -lrt > @@ -19,7 +19,7 @@ TEST_GEN_FILES += thuge-gen > TEST_GEN_FILES += transhuge-stress > TEST_GEN_FILES += userfaultfd > > -ifneq (,$(filter $(ARCH),arm64 ia64 mips64 parisc64 ppc64 riscv64 s390x sh64 sparc64 x86_64)) > +ifneq (,$(filter $(MACHINE),arm64 ia64 mips64 parisc64 ppc64 riscv64 s390x sh64 sparc64 x86_64)) > TEST_GEN_FILES += va_128TBswitch > TEST_GEN_FILES += virtual_address_range > endif > -- > 2.17.1
On 2/10/20 7:49 PM, Michael Ellerman wrote: > Sandipan Das <sandipan@linux.ibm.com> writes: >> Independent builds of the vm selftests is currently broken >> because commit 7549b3364201 overrides the value of ARCH with >> the machine name from uname. This does not always match the >> architecture names used for tasks like header installation. >> In the interest not adding more delays to this patch, I fixed up the commit log for the following error and applied it. I hope to send this up for next rc. ERROR: Please use git commit description style 'commit <12+ chars of sha1> ("<title line>")' - ie: 'commit 7549b3364201 ("selftests: vm: Build/Run 64bit tests only on 64bit arch")' #93: because commit 7549b3364201 overrides the value of ARCH with The fixed up now looks as follows: Independent builds of the vm selftests is currently broken because commit 7549b3364201 ("selftests: vm: Build/Run 64bit tests only on 64bit arch") overrides the value of ARCH with the machine name from uname. This does not always match the architecture names used for tasks like header installation. Please make sure to run checkpatch with --strict to catch these kinds of errors in the future. thanks, -- Shuah
diff --git a/tools/testing/selftests/vm/Makefile b/tools/testing/selftests/vm/Makefile index 7f9a8a8c31da..3f2e2f0ccbc9 100644 --- a/tools/testing/selftests/vm/Makefile +++ b/tools/testing/selftests/vm/Makefile @@ -1,7 +1,7 @@ # SPDX-License-Identifier: GPL-2.0 # Makefile for vm selftests uname_M := $(shell uname -m 2>/dev/null || echo not) -ARCH ?= $(shell echo $(uname_M) | sed -e 's/aarch64.*/arm64/') +MACHINE ?= $(shell echo $(uname_M) | sed -e 's/aarch64.*/arm64/') CFLAGS = -Wall -I ../../../../usr/include $(EXTRA_CFLAGS) LDLIBS = -lrt @@ -19,7 +19,7 @@ TEST_GEN_FILES += thuge-gen TEST_GEN_FILES += transhuge-stress TEST_GEN_FILES += userfaultfd -ifneq (,$(filter $(ARCH),arm64 ia64 mips64 parisc64 ppc64 riscv64 s390x sh64 sparc64 x86_64)) +ifneq (,$(filter $(MACHINE),arm64 ia64 mips64 parisc64 ppc64 riscv64 s390x sh64 sparc64 x86_64)) TEST_GEN_FILES += va_128TBswitch TEST_GEN_FILES += virtual_address_range endif
Independent builds of the vm selftests is currently broken because commit 7549b3364201 overrides the value of ARCH with the machine name from uname. This does not always match the architecture names used for tasks like header installation. E.g. for building tests on powerpc64, we need ARCH=powerpc and not ARCH=ppc64 or ARCH=ppc64le. Otherwise, the build fails as shown below. $ uname -m ppc64le $ make -C tools/testing/selftests/vm make: Entering directory '/home/sandipan/linux/tools/testing/selftests/vm' make --no-builtin-rules ARCH=ppc64le -C ../../../.. headers_install make[1]: Entering directory '/home/sandipan/linux' Makefile:653: arch/ppc64le/Makefile: No such file or directory make[1]: *** No rule to make target 'arch/ppc64le/Makefile'. Stop. make[1]: Leaving directory '/home/sandipan/linux' ../lib.mk:50: recipe for target 'khdr' failed make: *** [khdr] Error 2 make: Leaving directory '/home/sandipan/linux/tools/testing/selftests/vm' Fixes: 7549b3364201 ("selftests: vm: Build/Run 64bit tests only on 64bit arch") Signed-off-by: Sandipan Das <sandipan@linux.ibm.com> --- tools/testing/selftests/vm/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)