syzbot


INFO: rcu detected stall in sys_signalfd4

Status: upstream: reported on 2024/09/07 05:31
Reported-by: syzbot+f86100b6548eb4ddf3bf@syzkaller.appspotmail.com
First crash: 21d, last: 21d

Sample crash report:
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	Tasks blocked on level-0 rcu_node (CPUs 0-1): P14/1:b..l P3081/1:b..l P4716/1:b..l
	(detected by 0, t=10502 jiffies, g=16625, q=36 ncpus=2)
task:udevd           state:R  running task     stack:27736 pid:4716  ppid:3092   flags:0x00004002
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5241 [inline]
 __schedule+0x143f/0x4570 kernel/sched/core.c:6558
 preempt_schedule_irq+0xf7/0x1c0 kernel/sched/core.c:6870
 irqentry_exit+0x53/0x80 kernel/entry/common.c:439
 asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:653
RIP: 0010:__page_table_check_zero+0x153/0x4b0
Code: 21 dd 0f 85 20 02 00 00 4c 89 f7 e8 27 f9 ff ff 48 85 c0 48 bb 00 00 00 00 00 fc ff df 0f 84 58 01 00 00 49 89 c7 8b 74 24 04 <41> 89 f6 bf 40 00 00 00 e8 10 d5 9d ff 45 31 e4 49 c7 c5 c0 7a 43
RSP: 0018:ffffc9000af8f8d8 EFLAGS: 00000282
RAX: ffff88814152f810 RBX: dffffc0000000000 RCX: ffff88805db48000
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 0000000000000000 R08: ffffffff81ecd776 R09: fffffbfff223b645
R10: 0000000000000000 R11: dffffc0000000001 R12: 0000000000000000
R13: ffffea000550dc80 R14: ffffea000550dc80 R15: ffff88814152f810
 page_table_check_free include/linux/page_table_check.h:46 [inline]
 free_pages_prepare mm/page_alloc.c:1445 [inline]
 free_pcp_prepare mm/page_alloc.c:1494 [inline]
 free_unref_page_prepare+0xf73/0x1120 mm/page_alloc.c:3369
 free_unref_page+0x33/0x3e0 mm/page_alloc.c:3464
 free_slab mm/slub.c:2031 [inline]
 discard_slab mm/slub.c:2037 [inline]
 __unfreeze_partials+0x1b7/0x210 mm/slub.c:2586
 put_cpu_partial+0x17b/0x250 mm/slub.c:2662
 qlink_free mm/kasan/quarantine.c:168 [inline]
 qlist_free_all+0x76/0xe0 mm/kasan/quarantine.c:187
 kasan_quarantine_reduce+0x156/0x170 mm/kasan/quarantine.c:294
 __kasan_slab_alloc+0x1f/0x70 mm/kasan/common.c:305
 kasan_slab_alloc include/linux/kasan.h:201 [inline]
 slab_post_alloc_hook+0x52/0x3a0 mm/slab.h:737
 slab_alloc_node mm/slub.c:3398 [inline]
 slab_alloc mm/slub.c:3406 [inline]
 __kmem_cache_alloc_lru mm/slub.c:3413 [inline]
 kmem_cache_alloc+0x10c/0x2d0 mm/slub.c:3422
 kmem_cache_zalloc include/linux/slab.h:683 [inline]
 __alloc_file+0x26/0x230 fs/file_table.c:138
 alloc_empty_file+0x92/0x180 fs/file_table.c:187
 alloc_file+0x5c/0x5e0 fs/file_table.c:229
 alloc_file_pseudo+0x259/0x2f0 fs/file_table.c:272
 __anon_inode_getfile fs/anon_inodes.c:109 [inline]
 __anon_inode_getfd fs/anon_inodes.c:194 [inline]
 anon_inode_getfd+0xca/0x1e0 fs/anon_inodes.c:229
 do_signalfd4+0x1ad/0x350 fs/signalfd.c:278
 __do_sys_signalfd4 fs/signalfd.c:311 [inline]
 __se_sys_signalfd4 fs/signalfd.c:302 [inline]
 __x64_sys_signalfd4+0x170/0x1b0 fs/signalfd.c:302
 do_syscall_x64 arch/x86/entry/common.c:51 [inline]
 do_syscall_64+0x3b/0xb0 arch/x86/entry/common.c:81
 entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7f997d12336b
RSP: 002b:00007ffd8be37178 EFLAGS: 00000286 ORIG_RAX: 0000000000000121
RAX: ffffffffffffffda RBX: 0000555d85aa6040 RCX: 00007f997d12336b
RDX: 0000000000000008 RSI: 00007ffd8be371e8 RDI: 00000000ffffffff
RBP: 0000555db6ab1ea0 R08: 0000000000000007 R09: 7d75c1f34a03b987
R10: 0000000000080800 R11: 0000000000000286 R12: 0000555db6ab0400
R13: 00007ffd8be371e8 R14: 0000000000000001 R15: 0000555db6a91910
 </TASK>
task:klogd           state:R  running task     stack:23880 pid:3081  ppid:1      flags:0x00004002
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5241 [inline]
 __schedule+0x143f/0x4570 kernel/sched/core.c:6558
 preempt_schedule_common+0x83/0xd0 kernel/sched/core.c:6727
 preempt_schedule+0xd9/0xe0 kernel/sched/core.c:6751
 preempt_schedule_thunk+0x16/0x18 arch/x86/entry/thunk_64.S:34
 __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:152 [inline]
 _raw_spin_unlock_irqrestore+0x128/0x130 kernel/locking/spinlock.c:194
 spin_unlock_irqrestore include/linux/spinlock.h:406 [inline]
 __wake_up_common_lock kernel/sched/wait.c:140 [inline]
 __wake_up_sync_key+0x121/0x1c0 kernel/sched/wait.c:208
 sock_def_readable+0x15b/0x280 net/core/sock.c:3305
 unix_dgram_sendmsg+0x1539/0x2050 net/unix/af_unix.c:2065
 sock_sendmsg_nosec net/socket.c:718 [inline]
 __sock_sendmsg net/socket.c:730 [inline]
 __sys_sendto+0x480/0x600 net/socket.c:2148
 __do_sys_sendto net/socket.c:2160 [inline]
 __se_sys_sendto net/socket.c:2156 [inline]
 __x64_sys_sendto+0xda/0xf0 net/socket.c:2156
 do_syscall_x64 arch/x86/entry/common.c:51 [inline]
 do_syscall_64+0x3b/0xb0 arch/x86/entry/common.c:81
 entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7f2b8eaa99b5
RSP: 002b:00007ffe7002d818 EFLAGS: 00000246 ORIG_RAX: 000000000000002c
RAX: ffffffffffffffda RBX: 0000000000000002 RCX: 00007f2b8eaa99b5
RDX: 000000000000005c RSI: 000055a9167755c0 RDI: 0000000000000003
RBP: 000055a91676f910 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000004000 R11: 0000000000000246 R12: 0000000000000013
R13: 00007f2b8ec37212 R14: 00007ffe7002d918 R15: 0000000000000000
 </TASK>
task:kworker/0:1     state:R  running task     stack:23544 pid:14    ppid:2      flags:0x00004000
Workqueue: events_power_efficient gc_worker
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5241 [inline]
 __schedule+0x143f/0x4570 kernel/sched/core.c:6558
 preempt_schedule_irq+0xf7/0x1c0 kernel/sched/core.c:6870
 irqentry_exit+0x53/0x80 kernel/entry/common.c:439
 asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:653
RIP: 0010:lock_acquire+0x26f/0x5a0 kernel/locking/lockdep.c:5666
Code: 2b 00 74 08 4c 89 f7 e8 6f aa 77 00 f6 44 24 61 02 0f 85 84 01 00 00 41 f7 c7 00 02 00 00 74 01 fb 48 c7 44 24 40 0e 36 e0 45 <4b> c7 44 25 00 00 00 00 00 43 c7 44 25 09 00 00 00 00 43 c7 44 25
RSP: 0018:ffffc900001379a0 EFLAGS: 00000206
RAX: 0000000000000001 RBX: 1ffff92000026f40 RCX: 1ffff92000026ee0
RDX: dffffc0000000000 RSI: ffffffff8b0c13e0 RDI: ffffffff8b5d69c0
RBP: ffffc90000137ae8 R08: dffffc0000000000 R09: fffffbfff223b645
R10: 0000000000000000 R11: dffffc0000000001 R12: 1ffff92000026f3c
R13: dffffc0000000000 R14: ffffc90000137a00 R15: 0000000000000246
 rcu_lock_acquire include/linux/rcupdate.h:350 [inline]
 rcu_read_lock include/linux/rcupdate.h:791 [inline]
 gc_worker+0x29b/0x1530 net/netfilter/nf_conntrack_core.c:1501
 process_one_work+0x8a9/0x11d0 kernel/workqueue.c:2292
 worker_thread+0xa47/0x1200 kernel/workqueue.c:2439
 kthread+0x28d/0x320 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295
 </TASK>
rcu: rcu_preempt kthread starved for 10284 jiffies! g16625 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x0 ->cpu=0
rcu: 	Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior.
rcu: RCU grace-period kthread stack dump:
task:rcu_preempt     state:R  running task     stack:26752 pid:16    ppid:2      flags:0x00004000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5241 [inline]
 __schedule+0x143f/0x4570 kernel/sched/core.c:6558
 schedule+0xbf/0x180 kernel/sched/core.c:6634
 schedule_timeout+0x1b9/0x300 kernel/time/timer.c:1965
 rcu_gp_fqs_loop+0x2d2/0x1150 kernel/rcu/tree.c:1706
 rcu_gp_kthread+0xa3/0x3b0 kernel/rcu/tree.c:1905
 kthread+0x28d/0x320 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295
 </TASK>
rcu: Stack dump where RCU GP kthread last ran:
CPU: 0 PID: 4707 Comm: syz.3.215 Not tainted 6.1.108-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/06/2024
RIP: 0010:__raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:152 [inline]
RIP: 0010:_raw_spin_unlock_irqrestore+0xd4/0x130 kernel/locking/spinlock.c:194
Code: 9c 8f 44 24 20 42 80 3c 23 00 74 08 4c 89 f7 e8 82 41 31 f7 f6 44 24 21 02 75 4e 41 f7 c7 00 02 00 00 74 01 fb bf 01 00 00 00 <e8> 27 89 ad f6 65 8b 05 d8 81 51 75 85 c0 74 3f 48 c7 04 24 0e 36
RSP: 0018:ffffc9000ac6fba0 EFLAGS: 00000206
RAX: b53656422b61ad00 RBX: 1ffff9200158df78 RCX: ffffffff97332103
RDX: dffffc0000000000 RSI: ffffffff8b0c0260 RDI: 0000000000000001
RBP: ffffc9000ac6fc30 R08: dffffc0000000000 R09: ffffed1005a334a1
R10: 0000000000000000 R11: dffffc0000000001 R12: dffffc0000000000
R13: 1ffff9200158df74 R14: ffffc9000ac6fbc0 R15: 0000000000000246
FS:  00007fa86e1ea6c0(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000555d85a8b72e CR3: 000000005a74b000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <IRQ>
 </IRQ>
 <TASK>
 spin_unlock_irqrestore include/linux/spinlock.h:406 [inline]
 unlock_task_sighand include/linux/sched/signal.h:753 [inline]
 do_send_sig_info kernel/signal.c:1301 [inline]
 group_send_sig_info+0x2d8/0x300 kernel/signal.c:1448
 bpf_send_signal_common+0x2d8/0x420 kernel/trace/bpf_trace.c:882
 ____bpf_send_signal kernel/trace/bpf_trace.c:887 [inline]
 bpf_send_signal+0x15/0x20 kernel/trace/bpf_trace.c:885
 bpf_prog_7ba5217f62dcd359+0x38/0x3c
 bpf_dispatcher_nop_func include/linux/bpf.h:989 [inline]
 __bpf_prog_run include/linux/filter.h:603 [inline]
 bpf_prog_run include/linux/filter.h:610 [inline]
 __bpf_trace_run kernel/trace/bpf_trace.c:2273 [inline]
 bpf_trace_run2+0x1fd/0x410 kernel/trace/bpf_trace.c:2312
 __bpf_trace_sys_enter+0x60/0x70 include/trace/events/syscalls.h:18
 trace_sys_enter include/trace/events/syscalls.h:18 [inline]
 syscall_trace_enter kernel/entry/common.c:81 [inline]
 __syscall_enter_from_user_work kernel/entry/common.c:100 [inline]
 syscall_enter_from_user_mode+0x206/0x230 kernel/entry/common.c:118
 do_syscall_64+0x1e/0xb0 arch/x86/entry/common.c:77
 entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7fa86d318859
Code: 64 c7 00 16 00 00 00 b8 ff ff ff ff c3 0f 1f 40 00 90 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 c7 c0 0f 00 00 00 0f 05 <0f> 1f 80 00 00 00 00 48 81 ec 48 01 00 00 49 89 d0 64 48 8b 04 25
RSP: 002b:00007fa86e1e9b40 EFLAGS: 00000246 ORIG_RAX: 000000000000000f
RAX: ffffffffffffffda RBX: 00007fa86d535f88 RCX: 00007fa86d318859
RDX: 00007fa86e1e9b40 RSI: 00007fa86e1e9c70 RDI: 0000000000000011
RBP: 00007fa86d535f80 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007fa86d535f8c
R13: 0000000000000000 R14: 00007ffe1a76edd0 R15: 00007ffe1a76eeb8
 </TASK>

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/09/07 05:31 linux-6.1.y 699506173494 9750182a .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan INFO: rcu detected stall in sys_signalfd4
* Struck through repros no longer work on HEAD.