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

Zenghui Yu yuzenghui at huawei.com
Wed Mar 12 02:27:50 PDT 2025


Hi,

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.

Thanks,
Zenghui



More information about the linux-arm-kernel mailing list