On 7/28/2026 3:22 AM, Nick Desaulniers wrote: > On Mon, Jul 27, 2026 at 5:25 AM Hongyan Xia <[email protected]> wrote: >> >> From: Hongyan Xia <[email protected]> >> >> Static inline should be enough to actually inline functions for most >> compilers, but my Clang-19 somehow thinks it's better to outline them. >> These tiny helpers then live in normal .text sections instead of >> .noinstr sections, violating noinstr. > > Anything special about your build or config? For example, we've seen > a recent influx of bugs around AutoFDO not inlining functions (despite > constant propagating initdata constants into them) leading to modpost > errors.
I doubt there's anything special. The compiler is Debian clang version 19.1.7 (3+b1) installed through apt install in vanilla x86_64 Debian Trixie, compiled with 'make LLVM=1 ARCH=arm64 Image'. > Can you perhaps share your config so that someone else could repro and > take a look? Sure. Not sure how I can share the giant config without bombarding all the recipients. Let me just send to you privately first. > Happy to follow up in our issue tracker, too. > https://github.com/ClangBuiltLinux/linux/issues > >> >> Mark them __always_inline so the compiler can never outline them. >> >> Signed-off-by: Hongyan Xia <[email protected]> >> --- >> arch/arm64/include/asm/esr.h | 2 +- >> arch/arm64/include/asm/percpu.h | 2 +- >> arch/arm64/include/asm/preempt.h | 4 ++-- >> arch/arm64/include/asm/ptrace.h | 4 ++-- >> arch/arm64/kernel/debug-monitors.c | 2 +- >> include/linux/kprobes.h | 8 ++++---- > > It might not be appropriate for the changes to kprobes.h to go through > the arm64 tree, but maybe it is? I see Will has replied, so this might be a question for Kprobe maintainers. I do wonder that, if I see this in clang-19 compiling for arm64 without any special configs, eventually it might happen for other people after moving to clang-19?
