syzbot


INFO: rcu detected stall in sys_recvmmsg

Status: upstream: reported C repro on 2022/12/23 04:58
Reported-by: syzbot+2d90bbb791c829ff3afe@syzkaller.appspotmail.com
First crash: 524d, last: 524d
Fix bisection: failed (error log, bisect log)
  
Similar bugs (7)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: rcu detected stall in sys_recvmmsg (3) kasan mm batman 38 2d03h 163d 0/26 upstream: reported on 2023/12/19 09:31
linux-5.15 INFO: rcu detected stall in sys_recvmmsg origin:upstream C 8 10d 420d 0/3 upstream: reported C repro on 2023/04/06 01:32
linux-6.1 INFO: rcu detected stall in sys_recvmmsg (2) 2 2d18h 55d 0/3 upstream: reported on 2024/04/05 00:00
upstream INFO: rcu detected stall in sys_recvmmsg mptcp C done 52 850d 981d 20/26 fixed on 2022/03/08 16:11
linux-6.1 INFO: rcu detected stall in sys_recvmmsg 5 301d 432d 0/3 auto-obsoleted due to no activity on 2023/11/11 06:06
upstream INFO: rcu detected stall in sys_recvmmsg (2) net 4 610d 641d 0/26 auto-obsoleted due to no activity on 2023/01/03 09:53
android-5-15 BUG: soft lockup in sys_recvmmsg 4 13h08m 36d 0/2 premoderation: reported on 2024/04/23 17:26

Sample crash report:
IPVS: ftp: loaded support on port[0] = 21
IPVS: ftp: loaded support on port[0] = 21
IPVS: ftp: loaded support on port[0] = 21
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	(detected by 1, t=10502 jiffies, g=4197, q=4)
rcu: All QSes seen, last rcu_preempt kthread activity 10503 (4294979028-4294968525), jiffies_till_next_fqs=1, root ->qsmask 0x0
syz-executor998 R  running task    27536  8278   8131 0x00000000
Call Trace:
 <IRQ>
 sched_show_task.cold+0x332/0x396 kernel/sched/core.c:5337
 print_other_cpu_stall kernel/rcu/tree.c:1430 [inline]
 check_cpu_stall kernel/rcu/tree.c:1557 [inline]
 __rcu_pending kernel/rcu/tree.c:3293 [inline]
 rcu_pending kernel/rcu/tree.c:3336 [inline]
 rcu_check_callbacks.cold+0xb37/0xe19 kernel/rcu/tree.c:2682
 update_process_times+0x2a/0x70 kernel/time/timer.c:1650
 tick_sched_handle+0x9b/0x180 kernel/time/tick-sched.c:168
 tick_sched_timer+0xfc/0x290 kernel/time/tick-sched.c:1278
 __run_hrtimer kernel/time/hrtimer.c:1465 [inline]
 __hrtimer_run_queues+0x3f6/0xe60 kernel/time/hrtimer.c:1527
 hrtimer_interrupt+0x326/0x9e0 kernel/time/hrtimer.c:1585
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1071 [inline]
 smp_apic_timer_interrupt+0x10c/0x550 arch/x86/kernel/apic/apic.c:1096
 apic_timer_interrupt+0xf/0x20 arch/x86/entry/entry_64.S:894
 </IRQ>
RIP: 0010:__raw_spin_unlock_irq include/linux/spinlock_api_smp.h:169 [inline]
RIP: 0010:_raw_spin_unlock_irq+0x50/0x80 kernel/locking/spinlock.c:192
Code: c0 98 82 f1 89 48 ba 00 00 00 00 00 fc ff df 48 c1 e8 03 80 3c 10 00 75 31 48 83 3d 01 31 d8 01 00 74 25 fb 66 0f 1f 44 00 00 <bf> 01 00 00 00 e8 26 1b 28 f9 65 8b 05 9f 8d e8 77 85 c0 74 02 5d
RSP: 0018:ffff8880956b75f0 EFLAGS: 00000286 ORIG_RAX: ffffffffffffff13
RAX: 1ffffffff13e3053 RBX: ffff8880b2fee200 RCX: 1ffff110165fdd55
RDX: dffffc0000000000 RSI: ffff8880b2feea88 RDI: ffff8880b2feea84
RBP: ffff8880ba12b0c0 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: ffff8880ba12b0c0
R13: ffff8880af808000 R14: 0000000000000000 R15: 0000000000000001
 finish_lock_switch kernel/sched/core.c:2578 [inline]
 finish_task_switch+0x146/0x760 kernel/sched/core.c:2678
 context_switch kernel/sched/core.c:2831 [inline]
 __schedule+0x88f/0x2040 kernel/sched/core.c:3517
 preempt_schedule_common+0x45/0xc0 kernel/sched/core.c:3641
 ___preempt_schedule+0x16/0x18
 __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:161 [inline]
 _raw_spin_unlock_irqrestore+0xaf/0xe0 kernel/locking/spinlock.c:184
 spin_unlock_irqrestore include/linux/spinlock.h:384 [inline]
 __wake_up_common_lock+0xe0/0x170 kernel/sched/wait.c:122
 unix_dgram_recvmsg+0x2db/0xdb0 net/unix/af_unix.c:2168
 ___sys_recvmsg+0x255/0x570 net/socket.c:2389
 __sys_recvmmsg+0x254/0x6d0 net/socket.c:2501
 do_sys_recvmmsg+0x172/0x190 net/socket.c:2577
 __do_sys_recvmmsg net/socket.c:2595 [inline]
 __se_sys_recvmmsg net/socket.c:2591 [inline]
 __x64_sys_recvmmsg+0xba/0x150 net/socket.c:2591
 do_syscall_64+0xf9/0x620 arch/x86/entry/common.c:293
 entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x7f63aa090e09
Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 71 15 00 00 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f63aa021308 EFLAGS: 00000246 ORIG_RAX: 000000000000012b
RAX: ffffffffffffffda RBX: 0000000000000009 RCX: 00007f63aa090e09
RDX: 0000000000010106 RSI: 00000000200000c0 RDI: 0000000000000003
RBP: 00007f63aa11a418 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000002 R11: 0000000000000246 R12: 00007f63aa11a410
R13: 00007f63aa0e71a4 R14: 00007f63aa021400 R15: 0000000000022000
rcu: rcu_preempt kthread starved for 10544 jiffies! g4197 f0x2 RCU_GP_WAIT_FQS(5) ->state=0x0 ->cpu=0
rcu: RCU grace-period kthread stack dump:
rcu_preempt     R  running task    29208    10      2 0x80000000
Call Trace:
 context_switch kernel/sched/core.c:2828 [inline]
 __schedule+0x887/0x2040 kernel/sched/core.c:3517
 schedule+0x8d/0x1b0 kernel/sched/core.c:3561
 schedule_timeout+0x4cf/0xfe0 kernel/time/timer.c:1818
 rcu_gp_kthread+0xdad/0x21c0 kernel/rcu/tree.c:2202
 kthread+0x33f/0x460 kernel/kthread.c:259
 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:415

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2022/12/23 04:58 linux-4.19.y 3f8a27f9e27b 9da18ae8 .config console log report syz C [disk image] [vmlinux] ci2-linux-4-19 INFO: rcu detected stall in sys_recvmmsg
* Struck through repros no longer work on HEAD.