2024-06-11 06:10:10

by kernel test robot

[permalink] [raw]
Subject: [tip:WIP.x86/fpu] [x86/fpu] 052ffa1364: WARNING:at_arch/x86/mm/extable.c:#fixup_exception



Hello,

kernel test robot noticed "WARNING:at_arch/x86/mm/extable.c:#fixup_exception" on:

commit: 052ffa1364f57555fad862dc2094091b7cec9b93 ("x86/fpu: Remove the thread::fpu pointer")
https://git.kernel.org/cgit/linux/kernel/git/tip/tip.git WIP.x86/fpu

in testcase: boot

compiler: gcc-13
test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 16G

(please refer to attached dmesg/kmsg for entire log/backtrace)


as below table, both 052ffa1364 and its parent have same issue such like
kernel_BUG_at_mm/usercopy.c
Oops:invalid_opcode:#[##]PREEMPT_SMP
EIP:usercopy_abort
Kernel_panic-not_syncing:Fatal_exception

but this commit introduces WARNING:at_arch/x86/mm/extable.c:#fixup_exception

+---------------------------------------------------+------------+------------+
| | 4f4a9b3993 | 052ffa1364 |
+---------------------------------------------------+------------+------------+
| boot_failures | 6 | 6 |
| kernel_BUG_at_mm/usercopy.c | 6 | 6 |
| Oops:invalid_opcode:#[##]PREEMPT_SMP | 6 | 6 |
| EIP:usercopy_abort | 6 | 6 |
| Kernel_panic-not_syncing:Fatal_exception | 6 | 6 |
| WARNING:at_arch/x86/mm/extable.c:#fixup_exception | 0 | 6 |
| EIP:fixup_exception | 0 | 6 |
| EIP:restore_fpregs_from_fpstate | 0 | 6 |
+---------------------------------------------------+------------+------------+


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 <[email protected]>
| Closes: https://lore.kernel.org/oe-lkp/[email protected]


The kernel config and materials to reproduce are available at:
https://download.01.org/0day-ci/archive/20240611/[email protected]


[ 3.372028][ T64] ------------[ cut here ]------------
[ 3.372802][ T64] Bad FPU state detected at restore_fpregs_from_fpstate+0x38/0x70, reinitializing FPU registers.
[ 3.372818][ T64] WARNING: CPU: 0 PID: 64 at arch/x86/mm/extable.c:127 fixup_exception+0x405/0x41c
[ 3.375482][ T64] Modules linked in:
[ 3.376062][ T64] CPU: 0 PID: 64 Comm: modprobe Not tainted 6.10.0-rc2-00004-g052ffa1364f5 #1
[ 3.377299][ T64] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
[ 3.378863][ T64] EIP: fixup_exception+0x405/0x41c
[ 3.379541][ T64] Code: c2 e9 a2 fd ff ff 0f 0b ba 48 c9 fa c2 e9 e7 fd ff ff 89 44 24 04 b2 01 c7 04 24 98 a3 77 c2 88 15 f8 7c e2 c2 e8 0f 2d 01 00 <0f> 0b eb 9a 0f 0b b8 94 e4 97 c2 e8 17 97 6e 00 cc cc cc cc cc cc
[ 3.382186][ T64] EAX: 0000005e EBX: c28cd540 ECX: 00000234 EDX: c2cad1a4
[ 3.383617][ T64] ESI: ed6cdee4 EDI: 0000000d EBP: ed6cde50 ESP: ed6cddd4
[ 3.384683][ T64] DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068 EFLAGS: 00010086
[ 3.385916][ T64] CR0: 80050033 CR2: bf9717ab CR3: 2d6ad000 CR4: 00040690
[ 3.387245][ T64] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000
[ 3.388306][ T64] DR6: fffe0ff0 DR7: 00000400
[ 3.389074][ T64] Call Trace:
[ 3.389688][ T64] ? show_regs+0x72/0x7c
[ 3.390293][ T64] ? fixup_exception+0x405/0x41c
[ 3.390961][ T64] ? __warn+0x88/0x1a0
[ 3.391576][ T64] ? fixup_exception+0x405/0x41c
[ 3.392323][ T64] ? fixup_exception+0x405/0x41c
[ 3.393045][ T64] ? report_bug+0x182/0x1ac
[ 3.393759][ T64] ? exc_overflow+0x50/0x50
[ 3.394377][ T64] ? handle_bug+0x2d/0x50
[ 3.394969][ T64] ? exc_invalid_op+0x28/0x7c
[ 3.395643][ T64] ? console_unlock+0x64/0x110
[ 3.396286][ T64] ? handle_exception+0x150/0x150
[ 3.396987][ T64] ? print_lock_class_header+0x157/0x180
[ 3.397979][ T64] ? follow_phys+0x140/0x140
[ 3.398745][ T64] ? exc_overflow+0x50/0x50
[ 3.399484][ T64] ? fixup_exception+0x405/0x41c
[ 3.400220][ T64] ? follow_phys+0x140/0x140
[ 3.400898][ T64] ? exc_overflow+0x50/0x50
[ 3.401667][ T64] ? fixup_exception+0x405/0x41c
[ 3.402424][ T64] ? restore_fpregs_from_fpstate+0x38/0x70
[ 3.403336][ T64] ? 0xc1000000
[ 3.403946][ T64] ? lock_acquire+0x241/0x284
[ 3.404711][ T64] ? should_fail+0xa/0xc
[ 3.405464][ T64] ? _copy_to_user+0x4b/0x68
[ 3.406171][ T64] ? create_elf_tables+0x667/0x6b8
[ 3.406961][ T64] ? lock_release+0xe1/0x124
[ 3.407656][ T64] ? exc_bounds+0xd4/0xd4
[ 3.408280][ T64] exc_general_protection+0x13d/0x2f0
[ 3.409135][ T64] ? finalize_exec+0x50/0x60
[ 3.409929][ T64] ? exc_bounds+0xd4/0xd4
[ 3.410629][ T64] handle_exception+0x150/0x150
[ 3.411416][ T64] EIP: restore_fpregs_from_fpstate+0x38/0x70
[ 3.412303][ T64] Code: 7d fc 89 ca eb 09 cc cc cc db e2 0f 77 db 03 3e 8d 74 26 00 8b 3d ec a1 84 c2 8b 0d e8 a1 84 c2 21 fa 8d 7b 40 21 c8 0f ae 2f <8b> 5d f8 8b 7d fc 89 ec 5d c3 8d b6 00 00 00 00 3e 8d 74 26 00 0f
[ 3.414918][ T64] EAX: 00000007 EBX: c4a7b0e0 ECX: 00000007 EDX: 00000000
[ 3.415869][ T64] ESI: c4a7b0a0 EDI: c4a7b120 EBP: ed6cdf48 ESP: ed6cdf40
[ 3.416754][ T64] DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068 EFLAGS: 00010002
[ 3.417835][ T64] ? exc_bounds+0xd4/0xd4
[ 3.418450][ T64] ? exc_bounds+0xd4/0xd4
[ 3.419077][ T64] ? restore_fpregs_from_fpstate+0x35/0x70
[ 3.419844][ T64] switch_fpu_return+0x50/0x124
[ 3.420548][ T64] syscall_exit_to_user_mode+0x1a1/0x218
[ 3.421473][ T64] ? call_usermodehelper_exec_async+0xbe/0x1a8
[ 3.422433][ T64] ? call_usermodehelper+0x58/0x58
[ 3.423186][ T64] ret_from_fork+0x23/0x44
[ 3.423881][ T64] ? call_usermodehelper+0x58/0x58
[ 3.424616][ T64] ret_from_fork_asm+0x12/0x18
[ 3.425367][ T64] entry_INT80_32+0x10d/0x10d
[ 3.426064][ T64] EIP: 0xb7f6ba14
[ 3.426610][ T64] Code: Unable to access opcode bytes at 0xb7f6b9ea.
[ 3.427586][ T64] EAX: 00000000 EBX: 00000000 ECX: 00000000 EDX: 00000000
[ 3.428674][ T64] ESI: 00000000 EDI: 00000000 EBP: 00000000 ESP: bf9716b0
[ 3.429755][ T64] DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 007b EFLAGS: 00000200
[ 3.430823][ T64] irq event stamp: 0
[ 3.431340][ T64] hardirqs last enabled at (0): [<00000000>] 0x0
[ 3.432112][ T64] hardirqs last disabled at (0): [<c107c35b>] copy_process+0x913/0x1930
[ 3.433269][ T64] softirqs last enabled at (0): [<c107c35b>] copy_process+0x913/0x1930
[ 3.434387][ T64] softirqs last disabled at (0): [<00000000>] 0x0
[ 3.435251][ T64] ---[ end trace 0000000000000000 ]---
[ 3.451580][ T64] modprobe (64) used greatest stack depth: 5860 bytes left


--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki