Linux Kernel Selftest development
 help / color / mirror / Atom feed
* next-20251020: selftests: helpers.h:10:10: fatal error: kselftest.h: No such file or directory
@ 2025-10-21 11:08 Naresh Kamboju
  2025-10-22  6:29 ` [PATCH] selftests/x86: Add selftests include path for kselftest.h after centralization Bala-Vignesh-Reddy
  0 siblings, 1 reply; 5+ messages in thread
From: Naresh Kamboju @ 2025-10-21 11:08 UTC (permalink / raw)
  To: X86 ML, open list:KERNEL SELFTEST FRAMEWORK, open list,
	lkft-triage, Linux Regressions
  Cc: Shuah Khan, Mark Brown, BALAVIGNESH #, Wei Yang,
	Suren Baghdasaryan, Arnd Bergmann, Dan Carpenter, H. Peter Anvin,
	Dave Hansen, Borislav Petkov, Ingo Molnar, Thomas Gleixner,
	Anders Roxell, Ben Copeland

The selftests x86_64 builds failed due to following build warnings / errors
on the Linux next-20251020 and next-20251021 tags with gcc-14 and clang-21.

First seen on next-20251020
Good: next-20251020
Bad: next-20251017

Regression Analysis:
- New regression? yes
- Reproducibility? yes

### Build errors
x86_64-linux-gnu-gcc -m64 -o kselftest/x86/single_step_syscall_64 -O2
-g -std=gnu99 -pthread -Wall -isystem usr/include -no-pie
-DCAN_BUILD_64 single_step_syscall.c  -lrt -ldl
In file included from single_step_syscall.c:34:
helpers.h:10:10: fatal error: kselftest.h: No such file or directory
   10 | #include "kselftest.h"
      |          ^~~~~~~~~~~~~
compilation terminated.
make[4]: *** [Makefile:86: kselftest/x86/single_step_syscall_64] Error 1

### Suspected patch
  git log --oneline   next-20251017..next-20251020  --
tools/testing/selftests/x86/
  4d89827dfb274 selftests: complete kselftest include centralization

Build regressions: next-20251020: selftests: helpers.h:10:10: fatal
error: kselftest.h: No such file or directory

Reported-by: Linux Kernel Functional Testing <lkft@linaro.org>

### Steps to reproduce
  - tuxmake --runtime podman --target-arch x86_64 --toolchain gcc-14 \
     --kconfig https://storage.tuxsuite.com/public/linaro/lkft/builds/34JgN0fZ9uXj6HVnjvjqzIhgWbQ/config
\
     debugkernel cpupower headers kernel kselftest modules

## Source
* Kernel version: 6.18.0-rc2
* Git tree: https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next.git
* Git describe: next-20251021 and next-20251020
* Git commit: fe45352cd106ae41b5ad3f0066c2e54dbb2dfd70
* Architectures: x86_64
* Toolchains: gcc-14 and clang-21
* Kconfigs: defconfig+selftests/*/configs

## Build
* Build log: https://storage.tuxsuite.com/public/linaro/lkft/builds/34JgN0fZ9uXj6HVnjvjqzIhgWbQ/build.log
* Build details:
https://regressions.linaro.org/lkft/linux-next-master/next-20251020/kselftest-x86/x86_avx_64/
* Build link: https://storage.tuxsuite.com/public/linaro/lkft/builds/34JgN0fZ9uXj6HVnjvjqzIhgWbQ/
* Kernel config:
https://storage.tuxsuite.com/public/linaro/lkft/builds/34JgN0fZ9uXj6HVnjvjqzIhgWbQ/config

--
Linaro LKFT
https://lkft.linaro.org

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH] selftests/x86: Add selftests include path for kselftest.h after centralization
  2025-10-21 11:08 next-20251020: selftests: helpers.h:10:10: fatal error: kselftest.h: No such file or directory Naresh Kamboju
@ 2025-10-22  6:29 ` Bala-Vignesh-Reddy
  2025-10-22 15:02   ` Anders Roxell
                     ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Bala-Vignesh-Reddy @ 2025-10-22  6:29 UTC (permalink / raw)
  To: naresh.kamboju, broonie
  Cc: anders.roxell, arnd, benjamin.copeland, bp, dan.carpenter,
	dave.hansen, hpa, linux-kernel, linux-kselftest, lkft-triage,
	mingo, reddybalavignesh9979, regressions, richard.weiyang, shuah,
	surenb, tglx, x86, linux-kernel-mentees,
	Linux Kernel Functional Testing

The previous change centralizing kselftest.h include path in lib.mk
caused x86 selftests to fail, as x86 Makefile overwrites CFLAGS using
":=", dropping the include path added in lib.mk. Therefore, helpers.h
could not find kselftest.h during compilation.

Fix this by adding the tools/testing/sefltest to CFLAGS in x86 Makefile.

Fixes: 4d89827dfb27 ("selftests: complete kselftest include centralization")
Reported-by: Linux Kernel Functional Testing <lkft@linaro.org>
Closes: https://lore.kernel.org/lkml/CA+G9fYvKjQcCBMfXA-z2YuL2L+3Qd-pJjEUDX8PDdz2-EEQd=Q@mail.gmail.com/T/#m83fd330231287fc9d6c921155bee16c591db7360

Signed-off-by: Bala-Vignesh-Reddy <reddybalavignesh9979@gmail.com>
---
 tools/testing/selftests/x86/Makefile | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tools/testing/selftests/x86/Makefile b/tools/testing/selftests/x86/Makefile
index 83148875a12c..434065215d12 100644
--- a/tools/testing/selftests/x86/Makefile
+++ b/tools/testing/selftests/x86/Makefile
@@ -36,6 +36,7 @@ BINARIES_32 := $(patsubst %,$(OUTPUT)/%,$(BINARIES_32))
 BINARIES_64 := $(patsubst %,$(OUTPUT)/%,$(BINARIES_64))
 
 CFLAGS := -O2 -g -std=gnu99 -pthread -Wall $(KHDR_INCLUDES)
+CFLAGS += -I $(top_srcdir)/tools/testing/selftests/
 
 # call32_from_64 in thunks.S uses absolute addresses.
 ifeq ($(CAN_BUILD_WITH_NOPIE),1)
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] selftests/x86: Add selftests include path for kselftest.h after centralization
  2025-10-22  6:29 ` [PATCH] selftests/x86: Add selftests include path for kselftest.h after centralization Bala-Vignesh-Reddy
@ 2025-10-22 15:02   ` Anders Roxell
  2026-01-12 10:27   ` Brendan Jackman
  2026-01-17 11:08   ` Borislav Petkov
  2 siblings, 0 replies; 5+ messages in thread
From: Anders Roxell @ 2025-10-22 15:02 UTC (permalink / raw)
  To: Bala-Vignesh-Reddy
  Cc: naresh.kamboju, broonie, arnd, benjamin.copeland, bp,
	dan.carpenter, dave.hansen, hpa, linux-kernel, linux-kselftest,
	lkft-triage, mingo, regressions, richard.weiyang, shuah, surenb,
	tglx, x86, linux-kernel-mentees, Linux Kernel Functional Testing

On Wed, 22 Oct 2025 at 08:29, Bala-Vignesh-Reddy
<reddybalavignesh9979@gmail.com> wrote:
>
> The previous change centralizing kselftest.h include path in lib.mk
> caused x86 selftests to fail, as x86 Makefile overwrites CFLAGS using
> ":=", dropping the include path added in lib.mk. Therefore, helpers.h
> could not find kselftest.h during compilation.
>
> Fix this by adding the tools/testing/sefltest to CFLAGS in x86 Makefile.
>
> Fixes: 4d89827dfb27 ("selftests: complete kselftest include centralization")
> Reported-by: Linux Kernel Functional Testing <lkft@linaro.org>
> Closes: https://lore.kernel.org/lkml/CA+G9fYvKjQcCBMfXA-z2YuL2L+3Qd-pJjEUDX8PDdz2-EEQd=Q@mail.gmail.com/T/#m83fd330231287fc9d6c921155bee16c591db7360
>
> Signed-off-by: Bala-Vignesh-Reddy <reddybalavignesh9979@gmail.com>

Yes, works.

Tested-by: Anders Roxell <anders.roxell@linaro.org>


Cheers,
Anders

> ---
>  tools/testing/selftests/x86/Makefile | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/tools/testing/selftests/x86/Makefile b/tools/testing/selftests/x86/Makefile
> index 83148875a12c..434065215d12 100644
> --- a/tools/testing/selftests/x86/Makefile
> +++ b/tools/testing/selftests/x86/Makefile
> @@ -36,6 +36,7 @@ BINARIES_32 := $(patsubst %,$(OUTPUT)/%,$(BINARIES_32))
>  BINARIES_64 := $(patsubst %,$(OUTPUT)/%,$(BINARIES_64))
>
>  CFLAGS := -O2 -g -std=gnu99 -pthread -Wall $(KHDR_INCLUDES)
> +CFLAGS += -I $(top_srcdir)/tools/testing/selftests/
>
>  # call32_from_64 in thunks.S uses absolute addresses.
>  ifeq ($(CAN_BUILD_WITH_NOPIE),1)
> --
> 2.43.0
>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] selftests/x86: Add selftests include path for kselftest.h after centralization
  2025-10-22  6:29 ` [PATCH] selftests/x86: Add selftests include path for kselftest.h after centralization Bala-Vignesh-Reddy
  2025-10-22 15:02   ` Anders Roxell
@ 2026-01-12 10:27   ` Brendan Jackman
  2026-01-17 11:08   ` Borislav Petkov
  2 siblings, 0 replies; 5+ messages in thread
From: Brendan Jackman @ 2026-01-12 10:27 UTC (permalink / raw)
  To: Bala-Vignesh-Reddy, naresh.kamboju, broonie, bp, shuah
  Cc: anders.roxell, arnd, benjamin.copeland, bp, dan.carpenter,
	dave.hansen, hpa, linux-kernel, linux-kselftest, lkft-triage,
	mingo, regressions, richard.weiyang, shuah, surenb, tglx, x86,
	linux-kernel-mentees, Linux Kernel Functional Testing

On Wed Oct 22, 2025 at 6:29 AM UTC, Bala-Vignesh-Reddy wrote:
> The previous change centralizing kselftest.h include path in lib.mk
> caused x86 selftests to fail, as x86 Makefile overwrites CFLAGS using
> ":=", dropping the include path added in lib.mk. Therefore, helpers.h
> could not find kselftest.h during compilation.
>
> Fix this by adding the tools/testing/sefltest to CFLAGS in x86 Makefile.
>
> Fixes: 4d89827dfb27 ("selftests: complete kselftest include centralization")
> Reported-by: Linux Kernel Functional Testing <lkft@linaro.org>
> Closes: https://lore.kernel.org/lkml/CA+G9fYvKjQcCBMfXA-z2YuL2L+3Qd-pJjEUDX8PDdz2-EEQd=Q@mail.gmail.com/T/#m83fd330231287fc9d6c921155bee16c591db7360
>
> Signed-off-by: Bala-Vignesh-Reddy <reddybalavignesh9979@gmail.com>

Thanks, this fixes the issue I reported here:

https://lore.kernel.org/lkml/DFHI984SEFV3.2JL88CLHNT2SO@google.com/

Tested-by: Brendan Jackman <jackmanb@google.com>

Shuah, does this go via the kselftests tree? If not, Boris can you take
it via x86?

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] selftests/x86: Add selftests include path for kselftest.h after centralization
  2025-10-22  6:29 ` [PATCH] selftests/x86: Add selftests include path for kselftest.h after centralization Bala-Vignesh-Reddy
  2025-10-22 15:02   ` Anders Roxell
  2026-01-12 10:27   ` Brendan Jackman
@ 2026-01-17 11:08   ` Borislav Petkov
  2 siblings, 0 replies; 5+ messages in thread
From: Borislav Petkov @ 2026-01-17 11:08 UTC (permalink / raw)
  To: Bala-Vignesh-Reddy, Andrew Morton
  Cc: naresh.kamboju, broonie, anders.roxell, arnd, benjamin.copeland,
	dan.carpenter, dave.hansen, hpa, linux-kernel, linux-kselftest,
	lkft-triage, mingo, regressions, richard.weiyang, shuah, surenb,
	tglx, x86, linux-kernel-mentees, Linux Kernel Functional Testing

On Wed, Oct 22, 2025 at 11:59:48AM +0530, Bala-Vignesh-Reddy wrote:
> The previous change centralizing kselftest.h include path in lib.mk
> caused x86 selftests to fail, as x86 Makefile overwrites CFLAGS using
> ":=", dropping the include path added in lib.mk. Therefore, helpers.h
> could not find kselftest.h during compilation.
> 
> Fix this by adding the tools/testing/sefltest to CFLAGS in x86 Makefile.
> 
> Fixes: 4d89827dfb27 ("selftests: complete kselftest include centralization")

This should be:

e6fbd1759c9e ("selftests: complete kselftest include centralization")

@akpm: I see you took the above commit - I'll take this fix through tip.

> Reported-by: Linux Kernel Functional Testing <lkft@linaro.org>
> Closes: https://lore.kernel.org/lkml/CA+G9fYvKjQcCBMfXA-z2YuL2L+3Qd-pJjEUDX8PDdz2-EEQd=Q@mail.gmail.com/T/#m83fd330231287fc9d6c921155bee16c591db7360
> 
> Signed-off-by: Bala-Vignesh-Reddy <reddybalavignesh9979@gmail.com>
> ---
>  tools/testing/selftests/x86/Makefile | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/tools/testing/selftests/x86/Makefile b/tools/testing/selftests/x86/Makefile
> index 83148875a12c..434065215d12 100644
> --- a/tools/testing/selftests/x86/Makefile
> +++ b/tools/testing/selftests/x86/Makefile
> @@ -36,6 +36,7 @@ BINARIES_32 := $(patsubst %,$(OUTPUT)/%,$(BINARIES_32))
>  BINARIES_64 := $(patsubst %,$(OUTPUT)/%,$(BINARIES_64))
>  
>  CFLAGS := -O2 -g -std=gnu99 -pthread -Wall $(KHDR_INCLUDES)
> +CFLAGS += -I $(top_srcdir)/tools/testing/selftests/
>  
>  # call32_from_64 in thunks.S uses absolute addresses.
>  ifeq ($(CAN_BUILD_WITH_NOPIE),1)
> -- 

Thx.

-- 
Regards/Gruss,
    Boris.

https://people.kernel.org/tglx/notes-about-netiquette

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-01-17 11:08 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-21 11:08 next-20251020: selftests: helpers.h:10:10: fatal error: kselftest.h: No such file or directory Naresh Kamboju
2025-10-22  6:29 ` [PATCH] selftests/x86: Add selftests include path for kselftest.h after centralization Bala-Vignesh-Reddy
2025-10-22 15:02   ` Anders Roxell
2026-01-12 10:27   ` Brendan Jackman
2026-01-17 11:08   ` Borislav Petkov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox