2021-09-15 13:47:51

by Li Zhijian

[permalink] [raw]
Subject: [PATCH] selftests: be sure to make khdr before other targets

LKP/0Day reported some building errors about kvm, and errors message
are not always same:
- lib/x86_64/processor.c:1083:31: error: ‘KVM_CAP_NESTED_STATE’ undeclared
(first use in this function); did you mean ‘KVM_CAP_PIT_STATE2’?
- lib/test_util.c:189:30: error: ‘MAP_HUGE_16KB’ undeclared (first use
in this function); did you mean ‘MAP_HUGE_16GB’?

Although kvm relies on the khdr, they still be built in parallel when -j
is specified. In this case, it will cause compiling errors.

Here we mark target khdr as NOTPARALLEL to make it be always built
first.

CC: Philip Li <[email protected]>
Reported-by: kernel test robot <[email protected]>
Signed-off-by: Li Zhijian <[email protected]>
---
tools/testing/selftests/lib.mk | 1 +
1 file changed, 1 insertion(+)

diff --git a/tools/testing/selftests/lib.mk b/tools/testing/selftests/lib.mk
index 7ee911355328..5074b01f2a29 100644
--- a/tools/testing/selftests/lib.mk
+++ b/tools/testing/selftests/lib.mk
@@ -48,6 +48,7 @@ ARCH ?= $(SUBARCH)
# When local build is done, headers are installed in the default
# INSTALL_HDR_PATH usr/include.
.PHONY: khdr
+.NOTPARALLEL:
khdr:
ifndef KSFT_KHDR_INSTALL_DONE
ifeq (1,$(DEFAULT_INSTALL_HDR_PATH))
--
2.33.0




2021-09-15 16:39:34

by Shuah Khan

[permalink] [raw]
Subject: Re: [PATCH] selftests: be sure to make khdr before other targets

On 9/15/21 7:45 AM, Li Zhijian wrote:
> LKP/0Day reported some building errors about kvm, and errors message
> are not always same:
> - lib/x86_64/processor.c:1083:31: error: ‘KVM_CAP_NESTED_STATE’ undeclared
> (first use in this function); did you mean ‘KVM_CAP_PIT_STATE2’?
> - lib/test_util.c:189:30: error: ‘MAP_HUGE_16KB’ undeclared (first use
> in this function); did you mean ‘MAP_HUGE_16GB’?
>
> Although kvm relies on the khdr, they still be built in parallel when -j
> is specified. In this case, it will cause compiling errors.
>
> Here we mark target khdr as NOTPARALLEL to make it be always built
> first.
>
> CC: Philip Li <[email protected]>
> Reported-by: kernel test robot <[email protected]>
> Signed-off-by: Li Zhijian <[email protected]>
> ---
> tools/testing/selftests/lib.mk | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/tools/testing/selftests/lib.mk b/tools/testing/selftests/lib.mk
> index 7ee911355328..5074b01f2a29 100644
> --- a/tools/testing/selftests/lib.mk
> +++ b/tools/testing/selftests/lib.mk
> @@ -48,6 +48,7 @@ ARCH ?= $(SUBARCH)
> # When local build is done, headers are installed in the default
> # INSTALL_HDR_PATH usr/include.
> .PHONY: khdr
> +.NOTPARALLEL:
> khdr:
> ifndef KSFT_KHDR_INSTALL_DONE
> ifeq (1,$(DEFAULT_INSTALL_HDR_PATH))
>

Thank you for the fix. Applied to

https://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest.git/
fixes branch.

thanks,
-- Shuah