Re: [next-20251022] Kernel Boot Warnings at arch/powerpc/kernel/trace/ftrace.c:234
From: Hari Bathini <hbathini@linux.ibm.com>
Date: 2025-10-30 12:40:29
Also in:
lkml
Hi Josh, On 30/10/25 7:36 am, Josh Poimboeuf wrote:
On Wed, Oct 29, 2025 at 11:42:54PM +0530, Hari Bathini wrote:quoted
Hi Petr, On 23/10/25 2:42 pm, Petr Mladek wrote:quoted
On Wed 2025-10-22 19:56:45, Venkat Rao Bagalkote wrote:quoted
On 22/10/25 6:36 pm, Petr Mladek wrote:quoted
On Wed 2025-10-22 17:36:18, Venkat Rao Bagalkote wrote:quoted
On 22/10/25 1:52 pm, Venkat Rao Bagalkote wrote:quoted
Greetings!!! IBM CI has reported kernel boot warnings with next-20251022 kernel. I see there are couple of warnings hit and eventually system boots to emergency mode.With the identified first bad commit, is casuing the kernel to boot to emergency mode. I reverted the bad commit and built the kernel, then kernel is booting fine, but with boot warnings.I guess that it is the same problem which should get fixed by the patch https://lore.kernel.org/r/e52ee3edf32874da645a9e037a7d77c69893a22a.1760982784.git.jpoimboe@kernel.org (local)Thank you Petr, for pointing to the fix patch. It fixes the kernel booting to emergency mode.Great.quoted
But boot warning still persists.I looks like another problem. I would expect that it is in the ftrace code, either in the generic or arch-specific part.Yeah. This is part of arch-specific code that does init of ftrace out line stubs. The problem seems to be since commit 1ba9f8979426 ("vmlinux.lds: Unify TEXT_MAIN, DATA_MAIN, and related macros"). Before this commit, .text.startup section was featured in INIT_TEXT but now it seems to feature in TEXT. Is this change right/intentional? If yes, I can post a fix patch in ftrace arch-specific code accordingly.Ah, I wasn't aware of .text.startup. Apparently it's used by KASAN, KCSCAN and GCOV for a significant amount of constructor code, which is only called during boot. So we should try to keep it in .init.text. Venkat, does this fix it?
I tried the patch along with https://lore.kernel.org/r/e52ee3edf32874da645a9e037a7d77c69893a22a.1760982784.git.jpoimboe@kernel.org (local) It fixes the problems reported. Thanks!
quoted hunk ↗ jump to hunk
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h index 5facbc9946344..9de1d900fa154 100644 --- a/include/asm-generic/vmlinux.lds.h +++ b/include/asm-generic/vmlinux.lds.h@@ -88,13 +88,29 @@ /* * Support -ffunction-sections by matching .text and .text.*, - * but exclude '.text..*'. + * but exclude '.text..*', .text.startup[.*], and .text.exit[.*]. * - * Special .text.* sections that are typically grouped separately, such as + * .text.startup and .text.startup.* are matched later by INIT_TEXT. + * .text.exit and .text.exit.* are matched later by EXIT_TEXT. + * + * Other .text.* sections that are typically grouped separately, such as * .text.unlikely or .text.hot, must be matched explicitly before using * TEXT_MAIN. */ -#define TEXT_MAIN .text .text.[0-9a-zA-Z_]* +#define TEXT_MAIN \ + .text \ + .text.[_0-9A-Za-df-rt-z]* \ + .text.s[_0-9A-Za-su-z]* \ + .text.st[_0-9A-Zb-z]* \ + .text.sta[_0-9A-Za-qs-z]* \ + .text.star[_0-9A-Za-su-z]* \ + .text.start[_0-9A-Za-tv-z]* \ + .text.startu[_0-9A-Za-oq-z]* \ + .text.startup[_0-9A-Za-z]* \ + .text.e[_0-9A-Za-wy-z]* \ + .text.ex[_0-9A-Za-hj-z]* \ + .text.exi[_0-9A-Za-su-z]* \ + .text.exit[_0-9A-Za-z]* /* * Support -fdata-sections by matching .data, .data.*, and others,@@ -713,16 +729,16 @@ #define INIT_TEXT \ *(.init.text .init.text.*) \ - *(.text.startup) + *(.text.startup .text.startup.*) #define EXIT_DATA \ *(.exit.data .exit.data.*) \ *(.fini_array .fini_array.*) \ - *(.dtors .dtors.*) \ + *(.dtors .dtors.*) #define EXIT_TEXT \ *(.exit.text) \ - *(.text.exit) \ + *(.text.exit .text.exit.*) #define EXIT_CALL \ *(.exitcall.exit)