Re: include/linux/irq-entry-common.h:218: undefined reference to `syscall_enter_audit'
From: Philip Li
Date: Fri Sep 04 2026 - 10:38:02 EST
On Thu, Sep 03, 2026 at 10:03:56PM +0200, Thomas Gleixner wrote:
> On Thu, Sep 03 2026 at 19:35, kernel test robot wrote:
> > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> > head: 940de590b839f71d6dc846160534bf202401b8b7
> > commit: 6f25517010ddd3f8080d7e06b9b1cb1b64b73772 entry: Rework syscall_audit_enter()
> > date: 6 weeks ago
> > config: riscv-randconfig-r052-20260903 (https://download.01.org/0day-ci/archive/20260903/202609031938.ZvZZaRQy-lkp@xxxxxxxxx/config)
> > compiler: riscv64-linux-gcc (GCC) 8.5.0
> > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260903/202609031938.ZvZZaRQy-lkp@xxxxxxxxx/reproduce)
> >
> > If you fix the issue in a separate patch/commit (i.e. not just a new version of
> > the same patch/commit), kindly add following tags
> > | Fixes: 6f25517010dd ("entry: Rework syscall_audit_enter()")
> > | Reported-by: kernel test robot <lkp@xxxxxxxxx>
> > | Closes: https://lore.kernel.org/oe-kbuild-all/202609031938.ZvZZaRQy-lkp@xxxxxxxxx/
> >
> > All errors (new ones prefixed by >>):
> >
> > riscv64-linux-ld: arch/riscv/kernel/traps.o: in function `__exit_to_user_mode_validate':
> >>> include/linux/irq-entry-common.h:218: undefined reference to `syscall_enter_audit'
>
> Seriously?
>
> >
> > vim +218 include/linux/irq-entry-common.h
> >
> > a70e9f647f501e3 Jinjie Ruan 2025-06-24 212
> > 70fe25a3bc53a89 Thomas Gleixner 2025-10-27 213 static __always_inline void __exit_to_user_mode_validate(void)
> > 70fe25a3bc53a89 Thomas Gleixner 2025-10-27 214 {
> > a70e9f647f501e3 Jinjie Ruan 2025-06-24 215 /* Ensure that kernel state is sane for a return to userspace */
> > a70e9f647f501e3 Jinjie Ruan 2025-06-24 216 kmap_assert_nomap();
> > a70e9f647f501e3 Jinjie Ruan 2025-06-24 217 lockdep_assert_irqs_disabled();
> > a70e9f647f501e3 Jinjie Ruan 2025-06-24 @218 lockdep_sys_exit();
>
> What the heck has line 218 to do with that failure?
>
> This is getting stupid. It seems there is yet another compiler aside of
> s390 gcc which fails to do dead code elimination but this time it's
> worse it also points to the wrong place ....
Sorry for the confusion, I give a try with riscv gcc 12.5.0 for the same kconfig, the
result is below
include/asm-generic/preempt.h:54:(.noinstr.text+0x1a20): undefined reference to 'syscall_enter_audit'
This is FYI, I will further think of how to provide better error info, probably favor
newer compiler more during the bot testing.
>
> Thanks,
>
> tglx
>