syzbot


BUG: soft lockup in rcu_is_watching

Status: auto-closed as invalid on 2022/03/04 02:38
Reported-by: syzbot+1da4e6e1fb85d130626e@syzkaller.appspotmail.com
First crash: 905d, last: 897d
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-4.19 BUG: soft lockup in rcu_is_watching (2) 1 565d 565d 0/1 auto-obsoleted due to no activity on 2023/01/30 15:22

Sample crash report:
watchdog: BUG: soft lockup - CPU#1 stuck for 23s! [syz-executor.4:30558]
Modules linked in:
irq event stamp: 4020049
hardirqs last  enabled at (4020048): [<ffffffff81003ce4>] trace_hardirqs_on_thunk+0x1a/0x1c
hardirqs last disabled at (4020049): [<ffffffff81003d00>] trace_hardirqs_off_thunk+0x1a/0x1c
softirqs last  enabled at (2767524): [<ffffffff88400678>] __do_softirq+0x678/0x980 kernel/softirq.c:318
softirqs last disabled at (2767527): [<ffffffff813927d5>] invoke_softirq kernel/softirq.c:372 [inline]
softirqs last disabled at (2767527): [<ffffffff813927d5>] irq_exit+0x215/0x260 kernel/softirq.c:412
CPU: 1 PID: 30558 Comm: syz-executor.4 Not tainted 4.19.211-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:get_current arch/x86/include/asm/current.h:15 [inline]
RIP: 0010:__sanitizer_cov_trace_pc+0x4/0x50 kernel/kcov.c:100
Code: e8 11 dd 35 00 e9 ab fe ff ff 4c 89 ef e8 04 dd 35 00 e9 23 fe ff ff 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 48 8b 34 24 <65> 48 8b 04 25 c0 df 01 00 65 8b 15 cc 59 9f 7e 81 e2 00 01 1f 00
RSP: 0018:ffff8880ba107cb0 EFLAGS: 00000206 ORIG_RAX: ffffffffffffff13
RAX: 0000000000000103 RBX: 0000000000000103 RCX: ffffffff83771e23
RDX: 0000000000000103 RSI: ffffffff83771e2c RDI: 0000000000000005
RBP: ffffffff88b3e120 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000005 R11: 0000000000000000 R12: 0000000000000001
R13: ffffffff88b3e0e0 R14: 0000000000000000 R15: 0000000000000000
FS:  00007f645d6f7700(0000) GS:ffff8880ba100000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000560b254f10e8 CR3: 000000009ee25000 CR4: 00000000003406e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <IRQ>
 check_preemption_disabled+0x3c/0x280 lib/smp_processor_id.c:25
 rcu_dynticks_curr_cpu_in_eqs kernel/rcu/tree.c:348 [inline]
 rcu_is_watching+0x12/0xc0 kernel/rcu/tree.c:1025
 rcu_read_lock_sched_held+0xc6/0x1d0 kernel/rcu/update.c:113
 trace_timer_expire_exit include/trace/events/timer.h:121 [inline]
 call_timer_fn+0x617/0x700 kernel/time/timer.c:1339
 expire_timers+0x243/0x4e0 kernel/time/timer.c:1375
 __run_timers kernel/time/timer.c:1696 [inline]
 run_timer_softirq+0x21c/0x670 kernel/time/timer.c:1709
 __do_softirq+0x265/0x980 kernel/softirq.c:292
 invoke_softirq kernel/softirq.c:372 [inline]
 irq_exit+0x215/0x260 kernel/softirq.c:412
 exiting_irq arch/x86/include/asm/apic.h:536 [inline]
 smp_apic_timer_interrupt+0x136/0x550 arch/x86/kernel/apic/apic.c:1098
 apic_timer_interrupt+0xf/0x20 arch/x86/entry/entry_64.S:894
 </IRQ>
RIP: 0010:zap_pte_range mm/memory.c:1350 [inline]
RIP: 0010:zap_pmd_range mm/memory.c:1463 [inline]
RIP: 0010:zap_pud_range mm/memory.c:1492 [inline]
RIP: 0010:zap_p4d_range mm/memory.c:1513 [inline]
RIP: 0010:unmap_page_range+0x1473/0x2c50 mm/memory.c:1534
Code: 98 48 89 f8 48 c1 e8 03 42 0f b6 14 30 48 89 f8 83 e0 07 83 c0 03 38 d0 7c 08 84 d2 0f 85 39 15 00 00 83 ac 9c 00 01 00 00 01 <31> f6 4c 89 ef e8 a3 92 04 00 4c 89 e8 48 c1 e8 03 42 80 3c 30 00
RSP: 0018:ffff888024e27778 EFLAGS: 00000286 ORIG_RAX: ffffffffffffff13
RAX: 0000000000000003 RBX: 0000000000000000 RCX: ffffffff818ba030
RDX: 0000000000000000 RSI: ffffffff818ba03b RDI: ffff888024e27878
RBP: ffffea0002346d88 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000001 R11: 0000000000000000 R12: dead000000000100
R13: ffffea0002346d80 R14: dffffc0000000000 R15: 00007f645ecad000
 unmap_single_vma+0x198/0x300 mm/memory.c:1579
 unmap_vmas+0xa9/0x180 mm/memory.c:1609
 exit_mmap+0x2b9/0x530 mm/mmap.c:3093
 __mmput kernel/fork.c:1016 [inline]
 mmput+0x14e/0x4a0 kernel/fork.c:1037
 exit_mm kernel/exit.c:549 [inline]
 do_exit+0xaec/0x2be0 kernel/exit.c:857
 do_group_exit+0x125/0x310 kernel/exit.c:967
 get_signal+0x3f2/0x1f70 kernel/signal.c:2589
 do_signal+0x8f/0x1670 arch/x86/kernel/signal.c:799
 exit_to_usermode_loop+0x204/0x2a0 arch/x86/entry/common.c:163
 prepare_exit_to_usermode+0x277/0x2d0 arch/x86/entry/common.c:198
 retint_user+0x8/0x18
RIP: 0033:0x7f6460120059
Code: Bad RIP value.
RSP: 002b:00007f645d6f6d40 EFLAGS: 00010202
RAX: 00007f6460120050 RBX: 00007f6460294f60 RCX: 0000000000000000
RDX: 0000000000002000 RSI: 0000000000000fff RDI: 0000000020000000
RBP: 00007f64601dbf25 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000001 R12: 0000000000000000
R13: 00007ffd7283cf3f R14: 00007f645d6f7300 R15: 0000000000022000
Sending NMI from CPU 1 to CPUs 0:
NMI backtrace for cpu 0
CPU: 0 PID: 9021 Comm: kworker/u4:5 Not tainted 4.19.211-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Workqueue: bat_events batadv_nc_worker
RIP: 0010:lookup_chain_cache kernel/locking/lockdep.c:2318 [inline]
RIP: 0010:lookup_chain_cache_add kernel/locking/lockdep.c:2337 [inline]
RIP: 0010:validate_chain kernel/locking/lockdep.c:2391 [inline]
RIP: 0010:__lock_acquire+0xbed/0x3ff0 kernel/locking/lockdep.c:3416
Code: db 74 55 48 83 eb 08 74 4f 48 bd 00 00 00 00 00 fc ff df eb 06 48 83 eb 08 74 3d 48 8d 7b 18 48 89 f8 48 c1 e8 03 80 3c 28 00 <0f> 85 8c 1e 00 00 4c 3b 63 18 0f 84 f1 fc ff ff 48 8d 7b 08 48 89
RSP: 0018:ffff8880ba007928 EFLAGS: 00000046
RAX: 1ffffffff18f8a17 RBX: ffffffff8c7c50a0 RCX: 00000000000073f6
RDX: 1ffffffff19aa29e RSI: 000000005b45c111 RDI: ffffffff8c7c50b8
RBP: dffffc0000000000 R08: ffffffff8cd514f0 R09: 0000000000000005
R10: ffff888054bb8dd0 R11: 0000000000000000 R12: d2a92696d53f6a2f
R13: ffff888054bb8480 R14: ffff888054bb8de8 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff8880ba000000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000000c00ee0afe8 CR3: 00000000a8b7f000 CR4: 00000000003406f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <IRQ>
 lock_acquire+0x170/0x3c0 kernel/locking/lockdep.c:3908
 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
 _raw_spin_lock_irqsave+0x8c/0xc0 kernel/locking/spinlock.c:152
 try_to_wake_up+0x7b/0x1050 kernel/sched/core.c:1961
 wake_up_worker kernel/workqueue.c:839 [inline]
 insert_work+0x28b/0x360 kernel/workqueue.c:1312
 __queue_work+0x5cd/0x1100 kernel/workqueue.c:1464
 call_timer_fn+0x177/0x700 kernel/time/timer.c:1338
 expire_timers+0x97/0x4e0 kernel/time/timer.c:1371
 __run_timers kernel/time/timer.c:1696 [inline]
 run_timer_softirq+0x21c/0x670 kernel/time/timer.c:1709
 __do_softirq+0x265/0x980 kernel/softirq.c:292
 invoke_softirq kernel/softirq.c:372 [inline]
 irq_exit+0x215/0x260 kernel/softirq.c:412
 exiting_irq arch/x86/include/asm/apic.h:536 [inline]
 smp_apic_timer_interrupt+0x136/0x550 arch/x86/kernel/apic/apic.c:1098
 apic_timer_interrupt+0xf/0x20 arch/x86/entry/entry_64.S:894
 </IRQ>
RIP: 0010:__read_once_size include/linux/compiler.h:263 [inline]
RIP: 0010:__rcu_read_unlock+0xcc/0x160 kernel/rcu/tree_plugin.h:427
Code: 8c 00 00 00 c7 83 70 03 00 00 00 00 00 80 48 8d bb 74 03 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 0f b6 14 02 <48> 89 f8 83 e0 07 83 c0 03 38 d0 7c 04 84 d2 75 62 8b 83 74 03 00
RSP: 0018:ffff8880544b7c28 EFLAGS: 00000a03 ORIG_RAX: ffffffffffffff13
RAX: dffffc0000000000 RBX: ffff888054bb8480 RCX: ffffffff87d8c65d
RDX: 0000000000000000 RSI: ffffffff87d8c593 RDI: ffff888054bb87f4
RBP: ffff888054bb87f0 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000001 R11: 0000000000000000 R12: dffffc0000000000
R13: ffff888056036368 R14: ffff888056035940 R15: 0000000000000029
 rcu_read_unlock include/linux/rcupdate.h:680 [inline]
 batadv_nc_process_nc_paths.part.0+0x268/0x3d0 net/batman-adv/network-coding.c:710
 batadv_nc_process_nc_paths net/batman-adv/network-coding.c:690 [inline]
 batadv_nc_worker+0x9bb/0xd50 net/batman-adv/network-coding.c:739
 process_one_work+0x864/0x1570 kernel/workqueue.c:2153
 worker_thread+0x64c/0x1130 kernel/workqueue.c:2296
 kthread+0x33f/0x460 kernel/kthread.c:259
 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:415
----------------
Code disassembly (best guess):
   0:	e8 11 dd 35 00       	callq  0x35dd16
   5:	e9 ab fe ff ff       	jmpq   0xfffffeb5
   a:	4c 89 ef             	mov    %r13,%rdi
   d:	e8 04 dd 35 00       	callq  0x35dd16
  12:	e9 23 fe ff ff       	jmpq   0xfffffe3a
  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:	90                   	nop
  20:	90                   	nop
  21:	90                   	nop
  22:	90                   	nop
  23:	90                   	nop
  24:	90                   	nop
  25:	90                   	nop
  26:	48 8b 34 24          	mov    (%rsp),%rsi
* 2a:	65 48 8b 04 25 c0 df 	mov    %gs:0x1dfc0,%rax <-- trapping instruction
  31:	01 00
  33:	65 8b 15 cc 59 9f 7e 	mov    %gs:0x7e9f59cc(%rip),%edx        # 0x7e9f5a06
  3a:	81 e2 00 01 1f 00    	and    $0x1f0100,%edx

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2021/11/04 02:37 linux-4.19.y 3f8a27f9e27b 4c1be0be .config console log report info ci2-linux-4-19 BUG: soft lockup in rcu_is_watching
2021/10/27 19:41 linux-4.19.y 3f8a27f9e27b be531bb4 .config console log report info ci2-linux-4-19 BUG: soft lockup in rcu_is_watching
* Struck through repros no longer work on HEAD.