Message ID | 20221219095540.52208-1-likexu@tencent.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | KVM: selftests: Install sanitised kernel headers before compilation | expand |
On Mon, Dec 19, 2022, Like Xu wrote: > From: Like Xu <likexu@tencent.com> > > On many automated test boxes, selftests in a completely clean src tree > will be compiled independently: "make -j -C tools/testing/selftests/kvm". > Sometimes the compilation will fail and produce a false positive just > due to missing kernel headers (or others hidden behind the complete > kernel compilation or installation). > > Optimize this situation by explicitly adding the installation of sanitised > kernel headers before compilation to the Makefile. > > Reported-by: Sean Christopherson <seanjc@google.com> > Signed-off-by: Like Xu <likexu@tencent.com> > --- > tools/testing/selftests/kvm/Makefile | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/tools/testing/selftests/kvm/Makefile b/tools/testing/selftests/kvm/Makefile > index 947676983da1..a33e2f72d745 100644 > --- a/tools/testing/selftests/kvm/Makefile > +++ b/tools/testing/selftests/kvm/Makefile > @@ -202,6 +202,11 @@ TEST_GEN_PROGS_EXTENDED += $(TEST_GEN_PROGS_EXTENDED_$(UNAME_M)) > LIBKVM += $(LIBKVM_$(UNAME_M)) > > INSTALL_HDR_PATH = $(top_srcdir)/usr > + > +ifeq ($(shell make -j -C ../../../.. headers_install),) > + $(error "Please install sanitised kernel headers manually.") > +endif Auto-installation of headers was recently removed[*], presumably whatever problem existed with KSFT_KHDR_INSTALL also exists with this approach. FWIW, I also find the need to manually do headers_install annoying, but it's easy to workaround via bash aliases. [*] https://lore.kernel.org/lkml/cover.1657296695.git.guillaume.tucker@collabora.com
diff --git a/tools/testing/selftests/kvm/Makefile b/tools/testing/selftests/kvm/Makefile index 947676983da1..a33e2f72d745 100644 --- a/tools/testing/selftests/kvm/Makefile +++ b/tools/testing/selftests/kvm/Makefile @@ -202,6 +202,11 @@ TEST_GEN_PROGS_EXTENDED += $(TEST_GEN_PROGS_EXTENDED_$(UNAME_M)) LIBKVM += $(LIBKVM_$(UNAME_M)) INSTALL_HDR_PATH = $(top_srcdir)/usr + +ifeq ($(shell make -j -C ../../../.. headers_install),) + $(error "Please install sanitised kernel headers manually.") +endif + LINUX_HDR_PATH = $(INSTALL_HDR_PATH)/include/ LINUX_TOOL_INCLUDE = $(top_srcdir)/tools/include ifeq ($(ARCH),x86_64)