Hello, kernel test robot noticed "kernel_BUG_at_arch/x86/mm/physaddr.c" on: commit: e98970a1d2d45750526f30a7874206bace63ba42 ("mm: let pte_lockptr() consume a pte_t pointer") https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git pending-fixes [test failed on linux-next/master cd19ac2f903276b820f5d0d89de0c896c27036ed] in testcase: boot compiler: gcc-13 test machine: qemu-system-i386 -enable-kvm -cpu SandyBridge -smp 2 -m 4G (please refer to attached dmesg/kmsg for entire log/backtrace) +------------------------------------------+------------+------------+ | | 46d60c4a97 | e98970a1d2 | +------------------------------------------+------------+------------+ | boot_successes | 12 | 0 | | boot_failures | 0 | 12 | | kernel_BUG_at_arch/x86/mm/physaddr.c | 0 | 12 | | Oops:invalid_opcode:#[##]SMP | 0 | 12 | | EIP:__phys_addr | 0 | 12 | | Kernel_panic-not_syncing:Fatal_exception | 0 | 12 | +------------------------------------------+------------+------------+ 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 | Reported-by: kernel test robot <oliver.sang@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-lkp/202407311033.939d4064-lkp@xxxxxxxxx [ 13.014286][ T0] ------------[ cut here ]------------ [ 13.014881][ T0] kernel BUG at arch/x86/mm/physaddr.c:80! [ 13.015533][ T0] Oops: invalid opcode: 0000 [#1] SMP [ 13.016102][ T0] CPU: 0 UID: 0 PID: 0 Comm: swapper Not tainted 6.10.0-12930-ge98970a1d2d4 #1 58ad32fb15e77c9667e58e6d5da033948ebce8ed [ 13.017447][ T0] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2-debian-1.16.2-1 04/01/2014 [ 13.018582][ T0] EIP: __phys_addr (arch/x86/mm/physaddr.c:80 (discriminator 1)) [ 13.019088][ T0] Code: 26 00 e8 b7 3f 29 00 84 c0 74 b9 0f 0b b8 64 26 f2 c1 e8 83 c0 50 00 8d 76 00 0f 0b b8 4c 26 f2 c1 e8 74 c0 50 00 8d 74 26 00 <0f> 0b b8 58 26 f2 c1 e8 64 c0 50 00 e8 c7 5f ff ff 3d ff ff ff bf All code ======== 0: 26 00 e8 es add %ch,%al 3: b7 3f mov $0x3f,%bh 5: 29 00 sub %eax,(%rax) 7: 84 c0 test %al,%al 9: 74 b9 je 0xffffffffffffffc4 b: 0f 0b ud2 d: b8 64 26 f2 c1 mov $0xc1f22664,%eax 12: e8 83 c0 50 00 call 0x50c09a 17: 8d 76 00 lea 0x0(%rsi),%esi 1a: 0f 0b ud2 1c: b8 4c 26 f2 c1 mov $0xc1f2264c,%eax 21: e8 74 c0 50 00 call 0x50c09a 26: 8d 74 26 00 lea 0x0(%rsi,%riz,1),%esi 2a:* 0f 0b ud2 <-- trapping instruction 2c: b8 58 26 f2 c1 mov $0xc1f22658,%eax 31: e8 64 c0 50 00 call 0x50c09a 36: e8 c7 5f ff ff call 0xffffffffffff6002 3b: 3d ff ff ff bf cmp $0xbfffffff,%eax Code starting with the faulting instruction =========================================== 0: 0f 0b ud2 2: b8 58 26 f2 c1 mov $0xc1f22658,%eax 7: e8 64 c0 50 00 call 0x50c070 c: e8 c7 5f ff ff call 0xffffffffffff5fd8 11: 3d ff ff ff bf cmp $0xbfffffff,%eax [ 13.021187][ T0] EAX: 0002e7fe EBX: fffba000 ECX: 00000000 EDX: 0003ffba [ 13.021956][ T0] ESI: 3ffba000 EDI: e9baa000 EBP: c1eeff4c ESP: c1eeff44 [ 13.022730][ T0] DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068 EFLAGS: 00210087 [ 13.023572][ T0] CR0: 80050033 CR2: ffcb2000 CR3: 02637000 CR4: 00000090 [ 13.024314][ T0] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000 [ 13.025060][ T0] DR6: fffe0ff0 DR7: 00000400 [ 13.025558][ T0] Call Trace: [ 13.025911][ T0] ? show_regs (arch/x86/kernel/dumpstack.c:479 arch/x86/kernel/dumpstack.c:465) [ 13.026374][ T0] ? die (arch/x86/kernel/dumpstack.c:421 arch/x86/kernel/dumpstack.c:434 arch/x86/kernel/dumpstack.c:447) [ 13.026765][ T0] ? do_trap (arch/x86/kernel/traps.c:114 arch/x86/kernel/traps.c:155) [ 13.027223][ T0] ? do_error_trap (arch/x86/include/asm/traps.h:58 arch/x86/kernel/traps.c:176) [ 13.027709][ T0] ? __phys_addr (arch/x86/mm/physaddr.c:80 (discriminator 1)) [ 13.028176][ T0] ? exc_overflow (arch/x86/kernel/traps.c:252) [ 13.028645][ T0] ? exc_invalid_op (arch/x86/kernel/traps.c:267) [ 13.029139][ T0] ? __phys_addr (arch/x86/mm/physaddr.c:80 (discriminator 1)) [ 13.029599][ T0] ? handle_exception (arch/x86/entry/entry_32.S:1054) [ 13.030133][ T0] ? exc_overflow (arch/x86/kernel/traps.c:252) [ 13.030628][ T0] ? __phys_addr (arch/x86/mm/physaddr.c:80 (discriminator 1)) [ 13.031092][ T0] ? exc_overflow (arch/x86/kernel/traps.c:252) [ 13.031539][ T0] ? __phys_addr (arch/x86/mm/physaddr.c:80 (discriminator 1)) [ 13.031993][ T0] __pte_offset_map_lock (include/linux/mm.h:2838 (discriminator 1) include/linux/mm.h:2921 (discriminator 1) mm/pgtable-generic.c:374 (discriminator 1)) [ 13.032532][ T0] __get_locked_pte (mm/memory.c:1989) [ 13.033034][ T0] poking_init (include/linux/mm.h:2709 arch/x86/mm/init.c:841) [ 13.033489][ T0] start_kernel (init/main.c:964) [ 13.034007][ T0] i386_start_kernel (??:?) [ 13.034528][ T0] startup_32_smp (arch/x86/kernel/head_32.S:292) [ 13.035053][ T0] Modules linked in: [ 13.035469][ T0] ---[ end trace 0000000000000000 ]--- [ 13.036094][ T0] EIP: __phys_addr (arch/x86/mm/physaddr.c:80 (discriminator 1)) [ 13.036617][ T0] Code: 26 00 e8 b7 3f 29 00 84 c0 74 b9 0f 0b b8 64 26 f2 c1 e8 83 c0 50 00 8d 76 00 0f 0b b8 4c 26 f2 c1 e8 74 c0 50 00 8d 74 26 00 <0f> 0b b8 58 26 f2 c1 e8 64 c0 50 00 e8 c7 5f ff ff 3d ff ff ff bf All code ======== 0: 26 00 e8 es add %ch,%al 3: b7 3f mov $0x3f,%bh 5: 29 00 sub %eax,(%rax) 7: 84 c0 test %al,%al 9: 74 b9 je 0xffffffffffffffc4 b: 0f 0b ud2 d: b8 64 26 f2 c1 mov $0xc1f22664,%eax 12: e8 83 c0 50 00 call 0x50c09a 17: 8d 76 00 lea 0x0(%rsi),%esi 1a: 0f 0b ud2 1c: b8 4c 26 f2 c1 mov $0xc1f2264c,%eax 21: e8 74 c0 50 00 call 0x50c09a 26: 8d 74 26 00 lea 0x0(%rsi,%riz,1),%esi 2a:* 0f 0b ud2 <-- trapping instruction 2c: b8 58 26 f2 c1 mov $0xc1f22658,%eax 31: e8 64 c0 50 00 call 0x50c09a 36: e8 c7 5f ff ff call 0xffffffffffff6002 3b: 3d ff ff ff bf cmp $0xbfffffff,%eax Code starting with the faulting instruction =========================================== 0: 0f 0b ud2 2: b8 58 26 f2 c1 mov $0xc1f22658,%eax 7: e8 64 c0 50 00 call 0x50c070 c: e8 c7 5f ff ff call 0xffffffffffff5fd8 11: 3d ff ff ff bf cmp $0xbfffffff,%eax The kernel config and materials to reproduce are available at: https://download.01.org/0day-ci/archive/20240731/202407311033.939d4064-lkp@xxxxxxxxx -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki