The powerpc,s390, superSh and sparc tinyconfig builds failed due to following build warnings / errors on the Linux next-20240410 with gcc-13 and gcc-11.
List build failures: --- * s390, build - gcc-13-tinyconfig - failed - gcc-8-tinyconfig - failed
* sh, build - gcc-11-tinyconfig - failed
* sparc, build - gcc-11-tinyconfig - failed
* mips, build - gcc-12-tinyconfig - failed - gcc-8-tinyconfig - failed
* powerpc, build - gcc-13-tinyconfig - failed - gcc-8-tinyconfig - failed
Reported-by: Linux Kernel Functional Testing lkft@linaro.org
Build log: -------- kernel/time/timekeeping.c: In function 'timekeeping_debug_get_ns': kernel/time/timekeeping.c:286:1: error: no return statement in function returning non-void [-Werror=return-type] 286 | } | ^ cc1: some warnings being treated as errors
steps to reproduce: --- # tuxmake --runtime podman --target-arch powerpc --toolchain gcc-13 --kconfig tinyconfig
Links: - https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20240410/tes... - https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20240410/tes... - https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20240410/tes...
-- Linaro LKFT https://lkft.linaro.org
On 10/04/24 13:56, Naresh Kamboju wrote:
The powerpc,s390, superSh and sparc tinyconfig builds failed due to following build warnings / errors on the Linux next-20240410 with gcc-13 and gcc-11.
List build failures:
s390, build
- gcc-13-tinyconfig - failed
- gcc-8-tinyconfig - failed
sh, build
- gcc-11-tinyconfig - failed
sparc, build
- gcc-11-tinyconfig - failed
mips, build
- gcc-12-tinyconfig - failed
- gcc-8-tinyconfig - failed
powerpc, build
- gcc-13-tinyconfig - failed
- gcc-8-tinyconfig - failed
Reported-by: Linux Kernel Functional Testing lkft@linaro.org
Build log:
kernel/time/timekeeping.c: In function 'timekeeping_debug_get_ns': kernel/time/timekeeping.c:286:1: error: no return statement in function returning non-void [-Werror=return-type] 286 | } | ^ cc1: some warnings being treated as errors
Using unreachable() in the default BUG() seems to make this go away.
diff --git a/include/asm-generic/bug.h b/include/asm-generic/bug.h index 6e794420bd39..891bd9b0be70 100644 --- a/include/asm-generic/bug.h +++ b/include/asm-generic/bug.h @@ -156,7 +156,7 @@ extern __printf(1, 2) void __warn_printk(const char *fmt, ...);
#else /* !CONFIG_BUG */ #ifndef HAVE_ARCH_BUG -#define BUG() do {} while (1) +#define BUG() do { do {} while (1) ; unreachable(); } while (0) #endif
#ifndef HAVE_ARCH_BUG_ON
steps to reproduce:
# tuxmake --runtime podman --target-arch powerpc --toolchain gcc-13 --kconfig tinyconfig
Links:
- https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20240410/tes...
- https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20240410/tes...
- https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20240410/tes...
-- Linaro LKFT https://lkft.linaro.org
On 10/04/24 16:03, Adrian Hunter wrote:
On 10/04/24 13:56, Naresh Kamboju wrote:
The powerpc,s390, superSh and sparc tinyconfig builds failed due to following build warnings / errors on the Linux next-20240410 with gcc-13 and gcc-11.
List build failures:
s390, build
- gcc-13-tinyconfig - failed
- gcc-8-tinyconfig - failed
sh, build
- gcc-11-tinyconfig - failed
sparc, build
- gcc-11-tinyconfig - failed
mips, build
- gcc-12-tinyconfig - failed
- gcc-8-tinyconfig - failed
powerpc, build
- gcc-13-tinyconfig - failed
- gcc-8-tinyconfig - failed
Reported-by: Linux Kernel Functional Testing lkft@linaro.org
Build log:
kernel/time/timekeeping.c: In function 'timekeeping_debug_get_ns': kernel/time/timekeeping.c:286:1: error: no return statement in function returning non-void [-Werror=return-type] 286 | } | ^ cc1: some warnings being treated as errors
Using unreachable() in the default BUG() seems to make this go away.
diff --git a/include/asm-generic/bug.h b/include/asm-generic/bug.h index 6e794420bd39..891bd9b0be70 100644 --- a/include/asm-generic/bug.h +++ b/include/asm-generic/bug.h @@ -156,7 +156,7 @@ extern __printf(1, 2) void __warn_printk(const char *fmt, ...); #else /* !CONFIG_BUG */ #ifndef HAVE_ARCH_BUG -#define BUG() do {} while (1) +#define BUG() do { do {} while (1) ; unreachable(); } while (0) #endif #ifndef HAVE_ARCH_BUG_ON
Patch here:
https://lore.kernel.org/all/20240410153212.127477-1-adrian.hunter@intel.com/