[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20210214145357.GF6321@xsang-OptiPlex-9020>
Date: Sun, 14 Feb 2021 22:53:57 +0800
From: kernel test robot <oliver.sang@...el.com>
To: Ira Weiny <ira.weiny@...el.com>
Cc: Stephen Rothwell <sfr@...b.auug.org.au>,
Prathu Baronia <prathu.baronia@...plus.com>,
Thomas Gleixner <tglx@...utronix.de>,
Matthew Wilcox <willy@...radead.org>,
Peter Zijlstra <peterz@...radead.org>,
Randy Dunlap <rdunlap@...radead.org>,
Andrew Morton <akpm@...ux-foundation.org>,
LKML <linux-kernel@...r.kernel.org>,
Linux Memory Management List <linux-mm@...ck.org>,
lkp@...ts.01.org, lkp@...el.com
Subject: [mm/highmem] 80abc4109f:
WARNING:at_mm/highmem.c:#__kmap_local_sched_out
Greeting,
FYI, we noticed the following commit (built with gcc-9):
commit: 80abc4109f1d43bd0bcdd8a06fe50efd7589d4af ("mm/highmem: Remove deprecated kmap_atomic")
https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git master
in testcase: rcuscale
version:
with following parameters:
runtime: 300s
scale_type: tasks
on test machine: qemu-system-i386 -enable-kvm -cpu SandyBridge -smp 2 -m 8G
caused below changes (please refer to attached dmesg/kmsg for entire log/backtrace):
+-------------------------------------------------+------------+------------+
| | bff8e91b53 | 80abc4109f |
+-------------------------------------------------+------------+------------+
| boot_successes | 12 | 0 |
| boot_failures | 0 | 12 |
| WARNING:at_mm/highmem.c:#__kmap_local_sched_out | 0 | 12 |
| EIP:__kmap_local_sched_out | 0 | 12 |
| EIP:wp_page_copy | 0 | 5 |
| WARNING:at_mm/highmem.c:#__kmap_local_sched_in | 0 | 12 |
| EIP:__kmap_local_sched_in | 0 | 12 |
| EIP:do_fault | 0 | 5 |
| EIP:prep_new_page | 0 | 1 |
+-------------------------------------------------+------------+------------+
If you fix the issue, kindly add following tag
Reported-by: kernel test robot <oliver.sang@...el.com>
[ 27.158955] WARNING: CPU: 0 PID: 1 at mm/highmem.c:618 __kmap_local_sched_out (kbuild/src/consumer/mm/highmem.c:618 (discriminator 1))
[ 27.162724] Modules linked in:
[ 27.163644] CPU: 0 PID: 1 Comm: swapper Not tainted 5.11.0-rc7-00340-g80abc4109f1d #1
[ 27.165696] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-1 04/01/2014
[ 27.167860] EIP: __kmap_local_sched_out (kbuild/src/consumer/mm/highmem.c:618 (discriminator 1))
[ 27.169123] Code: d1 8b 55 f0 29 c2 89 c8 c7 02 00 00 00 00 e8 57 dc ed ff 83 c3 01 83 c7 04 39 9e a4 16 00 00 7f b9 83 c4 04 5b 5e 5f 5d c3 90 <0f> 0b eb e5 8d b4 26 00 00 00 00 8d 74 26 00 90 55 89 e5 57 56 53
All code
========
0: d1 8b 55 f0 29 c2 rorl -0x3dd60fab(%rbx)
6: 89 c8 mov %ecx,%eax
8: c7 02 00 00 00 00 movl $0x0,(%rdx)
e: e8 57 dc ed ff callq 0xffffffffffeddc6a
13: 83 c3 01 add $0x1,%ebx
16: 83 c7 04 add $0x4,%edi
19: 39 9e a4 16 00 00 cmp %ebx,0x16a4(%rsi)
1f: 7f b9 jg 0xffffffffffffffda
21: 83 c4 04 add $0x4,%esp
24: 5b pop %rbx
25: 5e pop %rsi
26: 5f pop %rdi
27: 5d pop %rbp
28: c3 retq
29: 90 nop
2a:* 0f 0b ud2 <-- trapping instruction
2c: eb e5 jmp 0x13
2e: 8d b4 26 00 00 00 00 lea 0x0(%rsi,%riz,1),%esi
35: 8d 74 26 00 lea 0x0(%rsi,%riz,1),%esi
39: 90 nop
3a: 55 push %rbp
3b: 89 e5 mov %esp,%ebp
3d: 57 push %rdi
3e: 56 push %rsi
3f: 53 push %rbx
Code starting with the faulting instruction
===========================================
0: 0f 0b ud2
2: eb e5 jmp 0xffffffffffffffe9
4: 8d b4 26 00 00 00 00 lea 0x0(%rsi,%riz,1),%esi
b: 8d 74 26 00 lea 0x0(%rsi,%riz,1),%esi
f: 90 nop
10: 55 push %rbp
11: 89 e5 mov %esp,%ebp
13: 57 push %rdi
14: 56 push %rsi
15: 53 push %rbx
[ 27.173681] EAX: 00000000 EBX: 00000000 ECX: 00000002 EDX: 00000002
[ 27.175281] ESI: c3db9b80 EDI: c3dbb228 EBP: c3d9fc4c ESP: c3d9fc3c
[ 27.176875] DS: 007b ES: 007b FS: 0000 GS: 00e0 SS: 0068 EFLAGS: 00010046
[ 27.178600] CR0: 80050033 CR2: 00000000 CR3: 02de2000 CR4: 000006d0
[ 27.180195] Call Trace:
[ 27.180963] __schedule (kbuild/src/consumer/kernel/sched/core.c:4098 kbuild/src/consumer/kernel/sched/core.c:4132 kbuild/src/consumer/kernel/sched/core.c:4279 kbuild/src/consumer/kernel/sched/core.c:5078)
[ 27.181990] ? preempt_schedule_irq (kbuild/src/consumer/arch/x86/include/asm/irqflags.h:54 kbuild/src/consumer/arch/x86/include/asm/irqflags.h:94 kbuild/src/consumer/kernel/sched/core.c:5339)
[ 27.183184] preempt_schedule_irq (kbuild/src/consumer/arch/x86/include/asm/irqflags.h:29 kbuild/src/consumer/arch/x86/include/asm/irqflags.h:79 kbuild/src/consumer/arch/x86/include/asm/irqflags.h:169 kbuild/src/consumer/kernel/sched/core.c:5341)
[ 27.184323] irqentry_exit_cond_resched (kbuild/src/consumer/kernel/entry/common.c:387)
[ 27.185599] irqentry_exit (kbuild/src/consumer/kernel/entry/common.c:417)
[ 27.186630] common_interrupt (kbuild/src/consumer/arch/x86/kernel/irq.c:239)
[ 27.187728] asm_common_interrupt (kbuild/src/consumer/arch/x86/include/asm/idtentry.h:620)
[ 27.188913] EIP: prep_new_page (kbuild/src/consumer/include/linux/string.h:432 kbuild/src/consumer/arch/x86/include/asm/page_32.h:39 kbuild/src/consumer/include/linux/highmem.h:203 kbuild/src/consumer/mm/page_alloc.c:1212 kbuild/src/consumer/mm/page_alloc.c:2301 kbuild/src/consumer/mm/page_alloc.c:2307)
[ 27.190058] Code: 00 89 de d3 e0 01 d8 89 45 e8 8d 74 26 00 90 8b 15 4c f3 ce c2 89 f0 83 c6 20 81 e2 63 01 00 00 e8 aa 89 fe ff 8d 78 04 89 c1 <c7> 00 00 00 00 00 89 c2 c7 80 fc 0f 00 00 00 00 00 00 83 e7 fc 31
All code
========
0: 00 89 de d3 e0 01 add %cl,0x1e0d3de(%rcx)
6: d8 89 45 e8 8d 74 fmuls 0x748de845(%rcx)
c: 26 00 90 8b 15 4c f3 add %dl,%es:-0xcb3ea75(%rax)
13: ce (bad)
14: c2 89 f0 retq $0xf089
17: 83 c6 20 add $0x20,%esi
1a: 81 e2 63 01 00 00 and $0x163,%edx
20: e8 aa 89 fe ff callq 0xfffffffffffe89cf
25: 8d 78 04 lea 0x4(%rax),%edi
28: 89 c1 mov %eax,%ecx
2a:* c7 00 00 00 00 00 movl $0x0,(%rax) <-- trapping instruction
30: 89 c2 mov %eax,%edx
32: c7 80 fc 0f 00 00 00 movl $0x0,0xffc(%rax)
39: 00 00 00
3c: 83 e7 fc and $0xfffffffc,%edi
3f: 31 .byte 0x31
Code starting with the faulting instruction
===========================================
0: c7 00 00 00 00 00 movl $0x0,(%rax)
6: 89 c2 mov %eax,%edx
8: c7 80 fc 0f 00 00 00 movl $0x0,0xffc(%rax)
f: 00 00 00
12: 83 e7 fc and $0xfffffffc,%edi
15: 31 .byte 0x31
[ 27.194588] EAX: ffffb000 EBX: d778ee00 ECX: ffffb000 EDX: ffffb000
[ 27.196181] ESI: d778ee20 EDI: ffffb004 EBP: c3d9fd38 ESP: c3d9fd20
[ 27.197789] DS: 007b ES: 007b FS: 0000 GS: 00e0 SS: 0068 EFLAGS: 00010292
[ 27.199507] ? prep_new_page (kbuild/src/consumer/include/linux/string.h:432 kbuild/src/consumer/arch/x86/include/asm/page_32.h:39 kbuild/src/consumer/include/linux/highmem.h:203 kbuild/src/consumer/mm/page_alloc.c:1212 kbuild/src/consumer/mm/page_alloc.c:2301 kbuild/src/consumer/mm/page_alloc.c:2307)
[ 27.200582] get_page_from_freelist (kbuild/src/consumer/mm/page_alloc.c:3952)
[ 27.201826] __alloc_pages_nodemask (kbuild/src/consumer/mm/page_alloc.c:4997)
[ 27.203062] __vmalloc_node_range (kbuild/src/consumer/include/linux/gfp.h:511 kbuild/src/consumer/mm/vmalloc.c:2576)
[ 27.204241] __vmalloc_node (kbuild/src/consumer/mm/vmalloc.c:2621)
[ 27.205267] ? e1000_setup_all_tx_resources (kbuild/src/consumer/drivers/net/ethernet/intel/e1000/e1000_main.c:1505 kbuild/src/consumer/drivers/net/ethernet/intel/e1000/e1000_main.c:1574)
[ 27.206657] vzalloc (kbuild/src/consumer/mm/vmalloc.c:2674)
[ 27.207564] ? e1000_setup_all_tx_resources (kbuild/src/consumer/drivers/net/ethernet/intel/e1000/e1000_main.c:1505 kbuild/src/consumer/drivers/net/ethernet/intel/e1000/e1000_main.c:1574)
[ 27.208914] e1000_setup_all_tx_resources (kbuild/src/consumer/drivers/net/ethernet/intel/e1000/e1000_main.c:1505 kbuild/src/consumer/drivers/net/ethernet/intel/e1000/e1000_main.c:1574)
[ 27.210259] e1000_open (kbuild/src/consumer/drivers/net/ethernet/intel/e1000/e1000_main.c:1367)
[ 27.211241] ? call_netdevice_notifiers_info (kbuild/src/consumer/net/core/dev.c:2041)
[ 27.212598] __dev_open (kbuild/src/consumer/net/core/dev.c:1532)
[ 27.213599] __dev_change_flags (kbuild/src/consumer/net/core/dev.c:8479)
[ 27.214749] dev_change_flags (kbuild/src/consumer/net/core/dev.c:8550)
[ 27.215830] ip_auto_config (kbuild/src/consumer/net/ipv4/ipconfig.c:243 kbuild/src/consumer/net/ipv4/ipconfig.c:1475)
[ 27.216893] ? __this_cpu_preempt_check (kbuild/src/consumer/lib/smp_processor_id.c:71)
[ 27.218158] ? __this_cpu_preempt_check (kbuild/src/consumer/lib/smp_processor_id.c:71)
[ 27.219406] ? root_nfs_parse_addr (kbuild/src/consumer/net/ipv4/ipconfig.c:1438)
[ 27.220574] ? root_nfs_parse_addr (kbuild/src/consumer/net/ipv4/ipconfig.c:1438)
[ 27.221758] do_one_initcall (kbuild/src/consumer/init/main.c:1223)
[ 27.222836] ? debug_locks_off (kbuild/src/consumer/lib/debug_locks.c:47)
[ 27.223933] ? rcu_read_lock_sched_held (kbuild/src/consumer/include/linux/lockdep.h:271 kbuild/src/consumer/kernel/rcu/update.c:123)
[ 27.225196] ? trace_initcall_level (kbuild/src/consumer/include/trace/events/initcall.h:10 (discriminator 29))
[ 27.226414] kernel_init_freeable (kbuild/src/consumer/init/main.c:1295 kbuild/src/consumer/init/main.c:1312 kbuild/src/consumer/init/main.c:1332 kbuild/src/consumer/init/main.c:1533)
[ 27.227593] ? rest_init (kbuild/src/consumer/init/main.c:1418)
[ 27.228612] kernel_init (kbuild/src/consumer/init/main.c:1423)
[ 27.229606] ret_from_fork (kbuild/src/consumer/arch/x86/entry/entry_32.S:856)
[ 27.230624] irq event stamp: 4311562
[ 27.236869] hardirqs last enabled at (4311561): preempt_schedule_irq (kbuild/src/consumer/arch/x86/include/asm/irqflags.h:54 kbuild/src/consumer/arch/x86/include/asm/irqflags.h:94 kbuild/src/consumer/kernel/sched/core.c:5339)
[ 27.239077] hardirqs last disabled at (4311562): __schedule (kbuild/src/consumer/kernel/sched/core.c:4977 (discriminator 1))
[ 27.241108] softirqs last enabled at (4311560): __do_softirq (kbuild/src/consumer/arch/x86/include/asm/preempt.h:26 kbuild/src/consumer/kernel/softirq.c:371)
[ 27.243189] softirqs last disabled at (4311553): do_softirq_own_stack (kbuild/src/consumer/arch/x86/kernel/irq_32.c:59 kbuild/src/consumer/arch/x86/kernel/irq_32.c:148)
[ 27.245393] ---[ end trace 00319dbec13fc731 ]---
[ 27.246821] ------------[ cut here ]------------
To reproduce:
# build kernel
cd linux
cp config-5.11.0-rc7-00340-g80abc4109f1d .config
make HOSTCC=gcc-9 CC=gcc-9 ARCH=i386 olddefconfig prepare modules_prepare bzImage
git clone https://github.com/intel/lkp-tests.git
cd lkp-tests
bin/lkp qemu -k <bzImage> job-script # job-script is attached in this email
Thanks,
Oliver Sang
View attachment "config-5.11.0-rc7-00340-g80abc4109f1d" of type "text/plain" (150916 bytes)
View attachment "job-script" of type "text/plain" (4371 bytes)
Download attachment "dmesg.xz" of type "application/x-xz" (21144 bytes)
View attachment "rcuscale" of type "text/plain" (121 bytes)
Powered by blists - more mailing lists