syzbot


BUG: soft lockup in kcov_mmap

Status: auto-closed as invalid on 2021/07/09 11:42
Subsystems: mm
[Documentation on labels]
Reported-by: syzbot+cdd7687af638a93d7839@syzkaller.appspotmail.com
First crash: 1101d, last: 1101d

Sample crash report:
watchdog: BUG: soft lockup - CPU#0 stuck for 123s! [syz-executor.4:18527]
Modules linked in:
irq event stamp: 1185116
hardirqs last  enabled at (1185115): [<ffffffff813214c1>] kvm_wait arch/x86/kernel/kvm.c:856 [inline]
hardirqs last  enabled at (1185115): [<ffffffff813214c1>] kvm_wait+0x51/0x100 arch/x86/kernel/kvm.c:837
hardirqs last disabled at (1185116): [<ffffffff89058acb>] sysvec_apic_timer_interrupt+0xb/0xc0 arch/x86/kernel/apic/apic.c:1100
softirqs last  enabled at (22254): [<ffffffff81451ed4>] invoke_softirq kernel/softirq.c:221 [inline]
softirqs last  enabled at (22254): [<ffffffff81451ed4>] __irq_exit_rcu kernel/softirq.c:422 [inline]
softirqs last  enabled at (22254): [<ffffffff81451ed4>] irq_exit_rcu+0x134/0x200 kernel/softirq.c:434
softirqs last disabled at (22209): [<ffffffff81451ed4>] invoke_softirq kernel/softirq.c:221 [inline]
softirqs last disabled at (22209): [<ffffffff81451ed4>] __irq_exit_rcu kernel/softirq.c:422 [inline]
softirqs last disabled at (22209): [<ffffffff81451ed4>] irq_exit_rcu+0x134/0x200 kernel/softirq.c:434
CPU: 0 PID: 18527 Comm: syz-executor.4 Not tainted 5.12.0-rc4-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:trylock_clear_pending kernel/locking/qspinlock_paravirt.h:121 [inline]
RIP: 0010:pv_wait_head_or_lock kernel/locking/qspinlock_paravirt.h:435 [inline]
RIP: 0010:__pv_queued_spin_lock_slowpath+0x3d9/0xb40 kernel/locking/qspinlock.c:508
Code: fc ff df 4c 8d 2c 01 eb 0c f3 90 41 83 ec 01 0f 84 72 04 00 00 41 0f b6 45 00 38 d8 7f 08 84 c0 0f 85 91 05 00 00 0f b6 45 00 <84> c0 75 db be 02 00 00 00 48 89 ef e8 b6 fd 5d 00 b8 00 01 00 00
RSP: 0018:ffffc90001a87918 EFLAGS: 00000246
RAX: 0000000000000001 RBX: 0000000000000000 RCX: 1ffffffff1811930
RDX: 0000000000000001 RSI: 0000000000000001 RDI: 0000000000000000
RBP: ffffffff8c08c980 R08: 0000000000000001 R09: ffffffff8fac88a7
R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000002736
R13: fffffbfff1811930 R14: 0000000000000001 R15: ffff8880b9c36040
FS:  000000000298c400(0000) GS:ffff8880b9c00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000568008 CR3: 000000005a73d000 CR4: 00000000001506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000600
Call Trace:
 pv_queued_spin_lock_slowpath arch/x86/include/asm/paravirt.h:554 [inline]
 queued_spin_lock_slowpath arch/x86/include/asm/qspinlock.h:51 [inline]
 queued_spin_lock include/asm-generic/qspinlock.h:85 [inline]
 do_raw_spin_lock+0x200/0x2b0 kernel/locking/spinlock_debug.c:113
 spin_lock include/linux/spinlock.h:354 [inline]
 alloc_vmap_area+0x1ba/0x1e10 mm/vmalloc.c:1215
 __get_vm_area_node+0x128/0x380 mm/vmalloc.c:2096
 __vmalloc_node_range mm/vmalloc.c:2571 [inline]
 vmalloc_user+0xf2/0x1a0 mm/vmalloc.c:2688
 kcov_mmap+0x2b/0x140 kernel/kcov.c:465
 call_mmap include/linux/fs.h:1982 [inline]
 mmap_region+0xcde/0x1730 mm/mmap.c:1805
 do_mmap+0xcff/0x11d0 mm/mmap.c:1581
 vm_mmap_pgoff+0x1b7/0x290 mm/util.c:519
 ksys_mmap_pgoff+0x49c/0x620 mm/mmap.c:1632
 do_syscall_64+0x2d/0x70 arch/x86/entry/common.c:46
 entry_SYSCALL_64_after_hwframe+0x44/0xae
RIP: 0033:0x4664a2
Code: 00 00 00 00 00 0f 1f 00 41 f7 c1 ff 0f 00 00 75 27 55 48 89 fd 53 89 cb 48 85 ff 74 3b 41 89 da 48 89 ef b8 09 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 66 5b 5d c3 0f 1f 00 48 c7 c0 bc ff ff ff 64
RSP: 002b:00007ffdcc8d3788 EFLAGS: 00000246 ORIG_RAX: 0000000000000009
RAX: ffffffffffffffda RBX: 0000000000000001 RCX: 00000000004664a2
RDX: 0000000000000003 RSI: 0000000000200000 RDI: 0000000000000000
RBP: 0000000000000000 R08: 00000000000000f0 R09: 0000000000000000
R10: 0000000000000001 R11: 0000000000000246 R12: 000000000056c5d0
R13: 000000000056ca68 R14: 0000000000000000 R15: 00000000000000f1
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 PID: 18443 Comm: syz-executor.5 Not tainted 5.12.0-rc4-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:memory_is_nonzero mm/kasan/generic.c:101 [inline]
RIP: 0010:memory_is_poisoned_n mm/kasan/generic.c:128 [inline]
RIP: 0010:memory_is_poisoned mm/kasan/generic.c:159 [inline]
RIP: 0010:check_region_inline mm/kasan/generic.c:177 [inline]
RIP: 0010:kasan_check_range+0x5f/0x180 mm/kasan/generic.c:186
Code: 89 fd 48 b8 00 00 00 00 00 fc ff df 4d 89 ca 48 c1 ed 03 49 c1 ea 03 48 01 c5 49 01 c2 48 89 e8 49 8d 5a 01 48 89 da 48 29 ea <48> 83 fa 10 7e 63 41 89 eb 41 83 e3 07 75 74 4c 8d 5a 07 48 85 d2
RSP: 0018:ffffc90000dc0850 EFLAGS: 00000002
RAX: fffffbfff1b8b5f9 RBX: fffffbfff1b8b5fa RCX: ffffffff8159ad98
RDX: 0000000000000001 RSI: 0000000000000008 RDI: ffffffff8dc5afc8
RBP: fffffbfff1b8b5f9 R08: 0000000000000000 R09: ffffffff8dc5afcf
R10: fffffbfff1b8b5f9 R11: 0000000000000000 R12: 0000000000000002
R13: ffffffff8bf92988 R14: 0000000000000000 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff8880b9d00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000000000056c090 CR3: 000000005a746000 CR4: 00000000001506e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <IRQ>
 instrument_atomic_read include/linux/instrumented.h:71 [inline]
 test_bit include/asm-generic/bitops/instrumented-non-atomic.h:134 [inline]
 cpumask_test_cpu include/linux/cpumask.h:373 [inline]
 trace_lock_acquire include/trace/events/lock.h:13 [inline]
 lock_acquire+0xb8/0x740 kernel/locking/lockdep.c:5481
 seqcount_lockdep_reader_access include/linux/seqlock.h:103 [inline]
 timekeeping_get_delta kernel/time/timekeeping.c:252 [inline]
 timekeeping_get_ns kernel/time/timekeeping.c:386 [inline]
 ktime_get+0x147/0x470 kernel/time/timekeeping.c:829
 clockevents_program_event+0x141/0x370 kernel/time/clockevents.c:326
 tick_program_event+0xac/0x140 kernel/time/tick-oneshot.c:44
 hrtimer_interrupt+0x414/0xa00 kernel/time/hrtimer.c:1676
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1089 [inline]
 __sysvec_apic_timer_interrupt+0x146/0x540 arch/x86/kernel/apic/apic.c:1106
 sysvec_apic_timer_interrupt+0x40/0xc0 arch/x86/kernel/apic/apic.c:1100
 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:632
RIP: 0010:mac80211_hwsim_tx_frame_no_nl.isra.0+0x78f/0x1330 drivers/net/wireless/mac80211_hwsim.c:1525
Code: bb a4 3c 00 00 48 89 f8 48 89 fa 48 c1 e8 03 83 e2 07 0f b6 04 28 38 d0 7f 08 84 c0 0f 85 36 09 00 00 44 0f b6 bb a4 3c 00 00 <31> ff 44 89 fe e8 c7 39 55 fc 45 84 ff 0f 84 77 ff ff ff e8 09 33
RSP: 0018:ffffc90000dc0ba8 EFLAGS: 00000246
RAX: 0000000000000000 RBX: ffff88806fef31e0 RCX: 0000000000000100
RDX: 0000000000000004 RSI: ffffffff851ec313 RDI: ffff88806fef6e84
RBP: dffffc0000000000 R08: 0000000000000003 R09: 0000000000000000
R10: ffffffff851ec349 R11: 0000000000000000 R12: ffff888057966640
R13: ffff88805ac43410 R14: ffff88805ac431e0 R15: 0000000000000000
 mac80211_hwsim_tx_frame+0x14f/0x1e0 drivers/net/wireless/mac80211_hwsim.c:1775
 mac80211_hwsim_beacon_tx+0x4ba/0x910 drivers/net/wireless/mac80211_hwsim.c:1829
 __iterate_interfaces+0x1e5/0x520 net/mac80211/util.c:793
 ieee80211_iterate_active_interfaces_atomic+0x8d/0x170 net/mac80211/util.c:829
 mac80211_hwsim_beacon+0xd5/0x1a0 drivers/net/wireless/mac80211_hwsim.c:1852
 __run_hrtimer kernel/time/hrtimer.c:1537 [inline]
 __hrtimer_run_queues+0x609/0xe40 kernel/time/hrtimer.c:1601
 hrtimer_run_softirq+0x17b/0x360 kernel/time/hrtimer.c:1618
 __do_softirq+0x29b/0x9f6 kernel/softirq.c:345
 invoke_softirq kernel/softirq.c:221 [inline]
 __irq_exit_rcu kernel/softirq.c:422 [inline]
 irq_exit_rcu+0x134/0x200 kernel/softirq.c:434
 sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1100
 </IRQ>
 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:632
RIP: 0010:section_to_usemap include/linux/mmzone.h:1292 [inline]
RIP: 0010:get_pageblock_bitmap mm/page_alloc.c:459 [inline]
RIP: 0010:__get_pfnblock_flags_mask mm/page_alloc.c:484 [inline]
RIP: 0010:get_pfnblock_migratetype mm/page_alloc.c:509 [inline]
RIP: 0010:free_unref_page_prepare mm/page_alloc.c:3208 [inline]
RIP: 0010:free_unref_page_prepare mm/page_alloc.c:3201 [inline]
RIP: 0010:free_unref_page+0xb7/0x1d0 mm/page_alloc.c:3253
Code: c0 0f 84 d5 00 00 00 0f b6 db 48 c1 e3 04 48 01 c3 48 8d 7b 08 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 80 3c 02 00 <0f> 85 fd 00 00 00 4c 89 e0 48 8b 53 08 48 c1 e8 09 83 e0 3f c1 e0
RSP: 0018:ffffc90001e4f740 EFLAGS: 00000246
RAX: dffffc0000000000 RBX: ffff88813fffa030 RCX: 0000000000000000
RDX: 1ffff11027fff407 RSI: 00000000000000ff RDI: ffff88813fffa038
RBP: ffffea0000601300 R08: 0000000000000001 R09: ffffed1003009800
R10: 0000000000000001 R11: 000000000000003f R12: 000000000001804c
R13: ffff88823fff4000 R14: 0000000000000000 R15: fffff52001a90000
 kasan_depopulate_vmalloc_pte+0x5c/0x70 mm/kasan/shadow.c:369
 apply_to_pte_range mm/memory.c:2414 [inline]
 apply_to_pmd_range mm/memory.c:2450 [inline]
 apply_to_pud_range mm/memory.c:2478 [inline]
 apply_to_p4d_range mm/memory.c:2506 [inline]
 __apply_to_page_range+0x645/0xdf0 mm/memory.c:2533
 kasan_release_vmalloc+0xa7/0xc0 mm/kasan/shadow.c:479
 __purge_vmap_area_lazy+0x8f9/0x1c50 mm/vmalloc.c:1381
 try_purge_vmap_area_lazy mm/vmalloc.c:1400 [inline]
 free_vmap_area_noflush+0xa57/0xd00 mm/vmalloc.c:1442
 free_unmap_vmap_area mm/vmalloc.c:1455 [inline]
 remove_vm_area+0x1cf/0x230 mm/vmalloc.c:2188
 vm_remove_mappings mm/vmalloc.c:2215 [inline]
 __vunmap+0x392/0xb60 mm/vmalloc.c:2277
 __vfree+0x3c/0xd0 mm/vmalloc.c:2333
 vfree+0x5a/0x90 mm/vmalloc.c:2364
 kcov_put kernel/kcov.c:408 [inline]
 kcov_put+0x26/0x40 kernel/kcov.c:404
 kcov_close+0xc/0x10 kernel/kcov.c:510
 __fput+0x288/0x920 fs/file_table.c:280
 task_work_run+0xdd/0x1a0 kernel/task_work.c:140
 exit_task_work include/linux/task_work.h:30 [inline]
 do_exit+0xbfc/0x2a60 kernel/exit.c:825
 do_group_exit+0x125/0x310 kernel/exit.c:922
 get_signal+0x42c/0x2100 kernel/signal.c:2777
 arch_do_signal_or_restart+0x2a8/0x1eb0 arch/x86/kernel/signal.c:789
 handle_signal_work kernel/entry/common.c:147 [inline]
 exit_to_user_mode_loop kernel/entry/common.c:171 [inline]
 exit_to_user_mode_prepare+0x148/0x250 kernel/entry/common.c:208
 __syscall_exit_to_user_mode_work kernel/entry/common.c:290 [inline]
 syscall_exit_to_user_mode+0x19/0x60 kernel/entry/common.c:301
 entry_SYSCALL_64_after_hwframe+0x44/0xae
RIP: 0033:0x466459
Code: Unable to access opcode bytes at RIP 0x46642f.
RSP: 002b:00007f2856ad3188 EFLAGS: 00000246 ORIG_RAX: 0000000000000141
RAX: fffffffffffffffc RBX: 000000000056bf60 RCX: 0000000000466459
RDX: 0000000000000028 RSI: 00000000200000c0 RDI: 000000000000000a
RBP: 00000000004bf9fb R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 000000000056bf60
R13: 00007ffe82fbde2f R14: 00007f2856ad3300 R15: 0000000000022000

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2021/04/10 11:41 bpf-next 92d3bff28aa4 bfeda1b1 .config console log report info ci-upstream-bpf-next-kasan-gce BUG: soft lockup in kcov_mmap
* Struck through repros no longer work on HEAD.