syzbot


BUG: soft lockup in check_preemption_disabled

Status: auto-obsoleted due to no activity on 2022/08/31 17:10
Reported-by: syzbot+08b0c389c2520c44fa52@syzkaller.appspotmail.com
First crash: 722d, last: 722d

Sample crash report:
watchdog: BUG: soft lockup - CPU#0 stuck for 22s! [syz-executor.4:9603]
Modules linked in:
irq event stamp: 3737975
hardirqs last  enabled at (3737974): [<ffffffff87400976>] restore_regs_and_return_to_kernel+0x0/0x2a
hardirqs last disabled at (3737975): [<ffffffff874018ae>] apic_timer_interrupt+0x8e/0xa0 arch/x86/entry/entry_64.S:793
softirqs last  enabled at (88778): [<ffffffff8760068b>] __do_softirq+0x68b/0x9ff kernel/softirq.c:314
softirqs last disabled at (91587): [<ffffffff81321cf3>] invoke_softirq kernel/softirq.c:368 [inline]
softirqs last disabled at (91587): [<ffffffff81321cf3>] irq_exit+0x193/0x240 kernel/softirq.c:409
CPU: 0 PID: 9603 Comm: syz-executor.4 Not tainted 4.14.277-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
task: ffff88806fbe42c0 task.stack: ffff88806fbe8000
RIP: 0010:check_preemption_disabled+0x9/0x240 lib/smp_processor_id.c:13
RSP: 0018:ffff8880ba407d00 EFLAGS: 00000206 ORIG_RAX: ffffffffffffff10
RAX: ffff88806fbe42c0 RBX: ffffffff893d2800 RCX: 0000000000000000
RDX: 0000000000000100 RSI: ffffffff87ccff80 RDI: ffffffff87ccffc0
RBP: ffff88806fbe42c0 R08: ffffffff8b9dbe20 R09: 0000000000042605
R10: ffff88806fbe4b48 R11: ffff88806fbe42c0 R12: 0000000000000001
R13: ffffffff87ccff80 R14: 1ffff11017480fd3 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff8880ba400000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000055d883d31138 CR3: 0000000008e6a000 CR4: 00000000003406f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <IRQ>
 rcu_lockdep_current_cpu_online kernel/rcu/tree.c:1186 [inline]
 rcu_lockdep_current_cpu_online+0x35/0x140 kernel/rcu/tree.c:1177
 rcu_read_lock_sched_held+0xd3/0x1d0 kernel/rcu/update.c:113
 trace_timer_expire_entry include/trace/events/timer.h:90 [inline]
 call_timer_fn+0x550/0x650 kernel/time/timer.c:1279
 expire_timers+0x232/0x4d0 kernel/time/timer.c:1319
 __run_timers kernel/time/timer.c:1637 [inline]
 run_timer_softirq+0x1d5/0x5a0 kernel/time/timer.c:1650
 __do_softirq+0x24d/0x9ff kernel/softirq.c:288
 invoke_softirq kernel/softirq.c:368 [inline]
 irq_exit+0x193/0x240 kernel/softirq.c:409
 exiting_irq arch/x86/include/asm/apic.h:638 [inline]
 smp_apic_timer_interrupt+0x141/0x5e0 arch/x86/kernel/apic/apic.c:1106
 apic_timer_interrupt+0x93/0xa0 arch/x86/entry/entry_64.S:793
 </IRQ>
RIP: 0010:memset_erms+0x9/0x10 arch/x86/lib/memset_64.S:66
RSP: 0018:ffff88806fbef660 EFLAGS: 00010206 ORIG_RAX: ffffffffffffff10
RAX: dffffc00000000ff RBX: 000000000000000e RCX: 00000000000399c0
RDX: 0000000000040000 RSI: 00000000000000ff RDI: ffffed100e146640
RBP: ffffea0001c28000 R08: ffffed100e140000 R09: ffffed100e140000
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000009
R13: 0000000000000200 R14: 0000000000070a00 R15: 0000000000200000
 free_pages_prepare mm/page_alloc.c:1070 [inline]
 __free_pages_ok+0x233/0xed0 mm/page_alloc.c:1262
 release_pages+0x779/0xbf0 mm/swap.c:788
 tlb_flush_mmu_free+0xc1/0x1a0 mm/memory.c:272
 zap_pte_range mm/memory.c:1444 [inline]
 zap_pmd_range mm/memory.c:1479 [inline]
 zap_pud_range mm/memory.c:1508 [inline]
 zap_p4d_range mm/memory.c:1529 [inline]
 unmap_page_range+0x1558/0x1d90 mm/memory.c:1550
 unmap_single_vma+0x147/0x2b0 mm/memory.c:1595
 unmap_vmas+0x9d/0x160 mm/memory.c:1625
 exit_mmap+0x270/0x4d0 mm/mmap.c:3058
 __mmput kernel/fork.c:931 [inline]
 mmput kernel/fork.c:952 [inline]
 mmput+0xfa/0x420 kernel/fork.c:947
 exit_mm kernel/exit.c:548 [inline]
 do_exit+0x984/0x2850 kernel/exit.c:855
 do_group_exit+0x100/0x2e0 kernel/exit.c:965
 get_signal+0x38d/0x1ca0 kernel/signal.c:2412
 do_signal+0x7c/0x1550 arch/x86/kernel/signal.c:792
 exit_to_usermode_loop+0x160/0x200 arch/x86/entry/common.c:160
 prepare_exit_to_usermode arch/x86/entry/common.c:199 [inline]
 syscall_return_slowpath arch/x86/entry/common.c:270 [inline]
 do_syscall_64+0x4a3/0x640 arch/x86/entry/common.c:297
 entry_SYSCALL_64_after_hwframe+0x46/0xbb
RIP: 0033:0x7f67722360e9
RSP: 002b:00007f6770bab168 EFLAGS: 00000246 ORIG_RAX: 000000000000010e
RAX: fffffffffffffdfe RBX: 00007f6772348f60 RCX: 00007f67722360e9
RDX: 0000000000000000 RSI: 00000000200001c0 RDI: 0e67d2ad1e0ff6b8
RBP: 00007f677229008d R08: 0000000020000200 R09: 0000000000000000
R10: 0000000020000140 R11: 0000000000000246 R12: 0000000000000000
R13: 00007ffef540979f R14: 00007f6770bab300 R15: 0000000000022000
Code: f4 ff ff e8 aa fe 64 fe e9 e5 f9 ff ff e8 d0 00 65 fe e9 b0 fd ff ff 90 90 90 90 90 90 90 90 90 90 90 41 57 41 56 41 55 49 89 f5 <41> 54 55 48 89 fd 53 e8 cb 46 3b fe 65 44 8b 25 53 21 e8 7c 65 
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 PID: 9621 Comm: syz-executor.3 Not tainted 4.14.277-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
task: ffff8880a5aec040 task.stack: ffff88806f970000
RIP: 0010:arch_local_save_flags arch/x86/include/asm/paravirt.h:774 [inline]
RIP: 0010:trace_hardirqs_off_caller+0xee/0x2b0 kernel/locking/lockdep.c:2957
RSP: 0018:ffff8880ba506fc0 EFLAGS: 00000046
RAX: 1ffffffff11e1310 RBX: ffff8880a5aec040 RCX: 0000000000000000
RDX: dffffc0000000000 RSI: 0000000000000000 RDI: ffff8880a5aec8c4
RBP: ffffffff81492bbb R08: ffffffff8c016988 R09: 0000000000000004
R10: 0000000000000000 R11: ffff8880a5aec040 R12: ffff8880a5aec040
R13: 1ffffffff11e1312 R14: 000000168b93fffd R15: 000026c2425026d1
FS:  00007f69ff57f700(0000) GS:ffff8880ba500000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000001b30025000 CR3: 000000008f7c7000 CR4: 00000000003406e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <IRQ>
 seqcount_lockdep_reader_access include/linux/seqlock.h:80 [inline]
 read_seqcount_begin include/linux/seqlock.h:164 [inline]
 ktime_get+0x9b/0x2c0 kernel/time/timekeeping.c:760
 clockevents_program_event+0x108/0x2d0 kernel/time/clockevents.c:331
 tick_program_event+0x78/0xd0 kernel/time/tick-oneshot.c:47
 hrtimer_interrupt+0x336/0x5e0 kernel/time/hrtimer.c:1334
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1079 [inline]
 smp_apic_timer_interrupt+0x117/0x5e0 arch/x86/kernel/apic/apic.c:1104
 apic_timer_interrupt+0x93/0xa0 arch/x86/entry/entry_64.S:793
RIP: 0010:unwind_next_frame+0x90/0x17d0 arch/x86/kernel/unwind_orc.c:505
RSP: 0018:ffff8880ba507208 EFLAGS: 00000286 ORIG_RAX: ffffffffffffff10
RAX: 0000000000000001 RBX: ffffffff8637340b RCX: 0000000000000000
RDX: dffffc0000000000 RSI: ffff8880ba507110 RDI: 0000000000000001
RBP: ffff8880ba507290 R08: 0000000000000001 R09: 0000000000000001
R10: ffff8880ba507d58 R11: 0000000000000001 R12: ffff8880ba5072a8
R13: 0000000000000000 R14: ffff88813fe6bdc0 R15: 0000000000000028
 __save_stack_trace+0x90/0x160 arch/x86/kernel/stacktrace.c:44
 save_stack mm/kasan/kasan.c:447 [inline]
 set_track mm/kasan/kasan.c:459 [inline]
 kasan_kmalloc+0xeb/0x160 mm/kasan/kasan.c:551
 slab_post_alloc_hook mm/slab.h:442 [inline]
 slab_alloc mm/slab.c:3390 [inline]
 kmem_cache_alloc+0x111/0x3c0 mm/slab.c:3550
 kmem_cache_zalloc include/linux/slab.h:651 [inline]
 fill_pool lib/debugobjects.c:110 [inline]
 __debug_object_init+0x578/0x7a0 lib/debugobjects.c:341
 debug_object_init lib/debugobjects.c:393 [inline]
 debug_object_activate+0x391/0x490 lib/debugobjects.c:474
 debug_rcu_head_queue kernel/rcu/rcu.h:152 [inline]
 __call_rcu.constprop.0+0x31/0x7d0 kernel/rcu/tree.c:3050
 dst_release+0x56/0x80 net/core/dst.c:188
 refdst_drop include/net/dst.h:286 [inline]
 skb_dst_drop include/net/dst.h:298 [inline]
 __dev_queue_xmit+0x1543/0x2480 net/core/dev.c:3480
 neigh_resolve_output+0x4e5/0x870 net/core/neighbour.c:1369
 neigh_output include/net/neighbour.h:500 [inline]
 ip6_finish_output2+0xf48/0x1f10 net/ipv6/ip6_output.c:120
 ip6_finish_output+0x5c6/0xd50 net/ipv6/ip6_output.c:192
 NF_HOOK_COND include/linux/netfilter.h:239 [inline]
 ip6_output+0x1c5/0x660 net/ipv6/ip6_output.c:209
 dst_output include/net/dst.h:470 [inline]
 NF_HOOK include/linux/netfilter.h:250 [inline]
 ndisc_send_skb+0x82a/0x1390 net/ipv6/ndisc.c:483
 ndisc_send_rs+0x125/0x630 net/ipv6/ndisc.c:677
 addrconf_rs_timer+0x2bb/0x5a0 net/ipv6/addrconf.c:3769
 call_timer_fn+0x14a/0x650 kernel/time/timer.c:1280
 expire_timers+0x232/0x4d0 kernel/time/timer.c:1319
 __run_timers kernel/time/timer.c:1637 [inline]
 run_timer_softirq+0x1d5/0x5a0 kernel/time/timer.c:1650
 __do_softirq+0x24d/0x9ff kernel/softirq.c:288
 invoke_softirq kernel/softirq.c:368 [inline]
 irq_exit+0x193/0x240 kernel/softirq.c:409
 exiting_irq arch/x86/include/asm/apic.h:638 [inline]
 smp_apic_timer_interrupt+0x141/0x5e0 arch/x86/kernel/apic/apic.c:1106
 apic_timer_interrupt+0x93/0xa0 arch/x86/entry/entry_64.S:793
 </IRQ>
RIP: 0010:arch_local_irq_restore arch/x86/include/asm/paravirt.h:779 [inline]
RIP: 0010:lock_release+0x41e/0x870 kernel/locking/lockdep.c:4020
RSP: 0018:ffff88806f977688 EFLAGS: 00000286 ORIG_RAX: ffffffffffffff10
RAX: 1ffffffff11e1311 RBX: 1ffff1100df2eed4 RCX: 1ffff11014b5d919
RDX: dffffc0000000000 RSI: 0000000000000001 RDI: 0000000000000286
RBP: ffff8880a5aec040 R08: ffffffff8b9c51a0 R09: 0000000000000000
R10: 0000000000000000 R11: ffff8880a5aec040 R12: 0000000000000000
R13: 0000000000000003 R14: ffff8880a5aec040 R15: 0000000000000001
 __raw_spin_unlock include/linux/spinlock_api_smp.h:150 [inline]
 _raw_spin_unlock+0x17/0x40 kernel/locking/spinlock.c:184
 spin_unlock include/linux/spinlock.h:357 [inline]
 ptr_ring_empty include/linux/ptr_ring.h:200 [inline]
 skb_array_empty include/linux/skb_array.h:77 [inline]
 tun_chr_poll+0x1d8/0x630 drivers/net/tun.c:1176
 do_select+0xa83/0x1290 fs/select.c:513
 core_sys_select+0x32f/0x6a0 fs/select.c:656
 do_pselect fs/select.c:733 [inline]
 SYSC_pselect6 fs/select.c:774 [inline]
 SyS_pselect6+0x358/0x3c0 fs/select.c:759
 do_syscall_64+0x1d5/0x640 arch/x86/entry/common.c:292
 entry_SYSCALL_64_after_hwframe+0x46/0xbb
RIP: 0033:0x7f6a00c0a0e9
RSP: 002b:00007f69ff57f168 EFLAGS: 00000246 ORIG_RAX: 000000000000010e
RAX: ffffffffffffffda RBX: 00007f6a00d1cf60 RCX: 00007f6a00c0a0e9
RDX: 0000000000000000 RSI: 00000000200001c0 RDI: 0e67d2ad1e0ff6b8
RBP: 00007f6a00c6408d R08: 0000000020000200 R09: 0000000000000000
R10: 0000000020000140 R11: 0000000000000246 R12: 0000000000000000
R13: 00007ffe728965af R14: 00007f69ff57f300 R15: 0000000000022000
Code: 00 00 8b 0d 05 13 ac 0a 85 c9 75 3d 48 c7 c0 80 98 f0 88 48 ba 00 00 00 00 00 fc ff df 48 c1 e8 03 80 3c 10 00 0f 85 92 01 00 00 <48> 83 3d 1a 8e af 07 00 0f 84 78 01 00 00 9c 58 0f 1f 44 00 00 
----------------
Code disassembly (best guess), 3 bytes skipped:
   0:	e8 aa fe 64 fe       	callq  0xfe64feaf
   5:	e9 e5 f9 ff ff       	jmpq   0xfffff9ef
   a:	e8 d0 00 65 fe       	callq  0xfe6500df
   f:	e9 b0 fd ff ff       	jmpq   0xfffffdc4
  14:	90                   	nop
  15:	90                   	nop
  16:	90                   	nop
  17:	90                   	nop
  18:	90                   	nop
  19:	90                   	nop
  1a:	90                   	nop
  1b:	90                   	nop
  1c:	90                   	nop
  1d:	90                   	nop
  1e:	90                   	nop
  1f:	41 57                	push   %r15
  21:	41 56                	push   %r14
  23:	41 55                	push   %r13
  25:	49 89 f5             	mov    %rsi,%r13
* 28:	41 54                	push   %r12 <-- trapping instruction
  2a:	55                   	push   %rbp
  2b:	48 89 fd             	mov    %rdi,%rbp
  2e:	53                   	push   %rbx
  2f:	e8 cb 46 3b fe       	callq  0xfe3b46ff
  34:	65 44 8b 25 53 21 e8 	mov    %gs:0x7ce82153(%rip),%r12d        # 0x7ce8218f
  3b:	7c
  3c:	65                   	gs

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2022/05/03 17:10 linux-4.14.y e3a56aaade89 dc9e5259 .config console log report info ci2-linux-4-14 BUG: soft lockup in check_preemption_disabled
* Struck through repros no longer work on HEAD.