[report] WARN_ON_ONCE() was triggered with pseudo NMI enabled

Will Deacon will at kernel.org
Fri Jun 27 08:48:00 PDT 2025


On Wed, Mar 12, 2025 at 05:27:50PM +0800, Zenghui Yu wrote:
> With pseudo NMI enabled, I can trigger the following splat when running
> selftests (e.g., arm64/signal/fake_sigreturn_bad_magic, which will issue
> a BRK instruction).
> 
>  ------------[ cut here ]------------
>  WARNING: CPU: 5 PID: 386876 at ./arch/arm64/include/asm/irqflags.h:34
> send_user_sigtrap+0xc8/0xd0
>  CPU: 5 UID: 0 PID: 386876 Comm: fake_sigreturn_ Kdump: loaded Not
> tainted 6.14.0-rc6-00017-g5e35b5d3ce97-dirty
>  pstate: 204003c9 (nzCv DAIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
>  pc : send_user_sigtrap+0xc8/0xd0
>  lr : brk_handler+0x3c/0xbc
>  sp : ffff8000ade3be00
>  pmr: 000000f0
>  x29: ffff8000ade3be00 x28: ffff00209777c600 x27: 0000000000000000
>  x26: 0000000000000000 x25: 0000000000000000 x24: 0000000000400e30
>  x23: ffff800082cb8458 x22: ffff800082cb83c8 x21: 00000000f200029a
>  x20: ffff8000ade3beb0 x19: ffff8000ade3beb0 x18: 0000000000000000
>  x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000
>  x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000
>  x11: 0000000000000000 x10: 0000000000000000 x9 : 0000000000000000
>  x8 : 0000000000000000 x7 : 0000000000000000 x6 : ffff8000827e6638
>  x5 : 0000000000000000 x4 : ffff8000827e6638 x3 : 0000000060000000
>  x2 : ffff8000ade3c000 x1 : 0000000000000001 x0 : 00000000000000d0
>  Call trace:
>   send_user_sigtrap+0xc8/0xd0 (P)
>   brk_handler+0x3c/0xbc
>   do_debug_exception+0x68/0x110
>   el0_dbg+0x28/0xb8
>   el0t_64_sync_handler+0x50/0xcc
>   el0t_64_sync+0x1ac/0x1b0
>  ---[ end trace 0000000000000000 ]---
> 
> I use mainline and the kernel is built with defconfig + ARM64_PSEUDO_NMI
> + ARM64_DEBUG_PRIORITY_MASKING.

This is fixed by Ada's series:

https://lore.kernel.org/r/20250620211207.773980-1-ada.coupriediaz@arm.com

Will



More information about the linux-arm-kernel mailing list