syzbot


BUG: soft lockup in ip_rcv (3)

Status: upstream: reported C repro on 2022/05/07 10:08
Reported-by: syzbot+a17e7f7bd5aff5b3f964@syzkaller.appspotmail.com
First crash: 931d, last: 811d
Fix bisection: failed (error log, bisect log)
  
Similar bugs (6)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-4.19 BUG: soft lockup in ip_rcv C error 16 631d 1299d 0/1 upstream: reported C repro on 2021/05/04 03:32
linux-4.14 BUG: soft lockup in ip_rcv (2) 1 1335d 1335d 0/1 auto-closed as invalid on 2021/07/26 15:49
linux-4.14 BUG: soft lockup in ip_rcv 1 1498d 1498d 0/1 auto-closed as invalid on 2021/02/14 05:25
upstream INFO: rcu detected stall in ip_rcv (3) kernel 1 1314d 1314d 0/28 auto-closed as invalid on 2021/07/17 18:11
upstream INFO: rcu detected stall in ip_rcv (4) bpf net 12 942d 1013d 0/28 auto-closed as invalid on 2022/07/25 09:18
upstream INFO: rcu detected stall in ip_rcv (5) net 2 456d 468d 0/28 auto-obsoleted due to no activity on 2023/11/23 01:36
Fix bisection attempts (3)
Created Duration User Patch Repo Result
2022/10/13 02:16 0m bisect fix linux-4.14.y error job log
2022/09/03 23:53 21m bisect fix linux-4.14.y OK (0) job log log
2022/08/04 23:06 22m bisect fix linux-4.14.y OK (0) job log log

Sample crash report:
syz-executor245 (8210) used greatest stack depth: 23176 bytes left
ip_tables: iptables: counters copy to user failed while replacing table
ip_tables: iptables: counters copy to user failed while replacing table
watchdog: BUG: soft lockup - CPU#1 stuck for 22s! [ksoftirqd/1:18]
Modules linked in:
irq event stamp: 4331513
hardirqs last  enabled at (4331512): [<ffffffff817ec390>] slab_alloc_node mm/slab.c:3327 [inline]
hardirqs last  enabled at (4331512): [<ffffffff817ec390>] kmem_cache_alloc_node_trace+0x2f0/0x400 mm/slab.c:3659
hardirqs last disabled at (4331513): [<ffffffff874018ae>] apic_timer_interrupt+0x8e/0xa0 arch/x86/entry/entry_64.S:793
softirqs last  enabled at (608060): [<ffffffff8760068b>] __do_softirq+0x68b/0x9ff kernel/softirq.c:314
softirqs last disabled at (608065): [<ffffffff81321920>] run_ksoftirqd+0x50/0x1a0 kernel/softirq.c:670
CPU: 1 PID: 18 Comm: ksoftirqd/1 Not tainted 4.14.286-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/29/2022
task: ffff8880b54a64c0 task.stack: ffff8880b54b0000
RIP: 0010:deref_stack_reg+0x28/0x1a0 arch/x86/kernel/unwind_orc.c:285
RSP: 0018:ffff8880b54b61e0 EFLAGS: 00000282 ORIG_RAX: ffffffffffffff10
RAX: dffffc0000000000 RBX: 1ffff11016a96c52 RCX: ffffffff8acde3ce
RDX: ffff8880b54b6360 RSI: ffff8880b54b74d8 RDI: ffff8880b54b6318
RBP: ffff8880b54b74d8 R08: ffffffff8acde3d2 R09: ffffffff8acde3d3
R10: 0000000000112a23 R11: 0000000000000001 R12: ffff8880b54b6318
R13: ffff8880b54b6360 R14: ffff8880b54b6368 R15: ffff8880b54b6318
FS:  0000000000000000(0000) GS:ffff8880ba500000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020618000 CR3: 000000009d772000 CR4: 00000000003406e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 unwind_next_frame+0xc98/0x17d0 arch/x86/kernel/unwind_orc.c:425
 __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_node mm/slab.c:3333 [inline]
 kmem_cache_alloc_node_trace+0x13d/0x400 mm/slab.c:3659
 __do_kmalloc_node mm/slab.c:3681 [inline]
 __kmalloc_node_track_caller+0x38/0x70 mm/slab.c:3696
 __kmalloc_reserve net/core/skbuff.c:137 [inline]
 __alloc_skb+0x96/0x510 net/core/skbuff.c:205
 skb_segment+0x677/0x2e60 net/core/skbuff.c:3683
 sctp_gso_segment net/sctp/offload.c:76 [inline]
 sctp_gso_segment+0x204/0x810 net/sctp/offload.c:43
 inet_gso_segment+0x487/0x10f0 net/ipv4/af_inet.c:1272
 inet_gso_segment+0x487/0x10f0 net/ipv4/af_inet.c:1272
 skb_mac_gso_segment+0x240/0x4c0 net/core/dev.c:2745
 __skb_gso_segment+0x302/0x600 net/core/dev.c:2818
 skb_gso_segment include/linux/netdevice.h:4005 [inline]
 validate_xmit_skb+0x49c/0x9f0 net/core/dev.c:3071
 validate_xmit_skb_list+0xaf/0x110 net/core/dev.c:3122
 sch_direct_xmit+0x2dc/0x500 net/sched/sch_generic.c:181
 qdisc_restart net/sched/sch_generic.c:249 [inline]
 __qdisc_run+0x25d/0xe00 net/sched/sch_generic.c:257
 __dev_xmit_skb net/core/dev.c:3231 [inline]
 __dev_queue_xmit+0x13ac/0x2480 net/core/dev.c:3489
 neigh_hh_output include/net/neighbour.h:490 [inline]
 neigh_output include/net/neighbour.h:498 [inline]
 ip_finish_output2+0x9db/0x1340 net/ipv4/ip_output.c:237
 ip_finish_output+0x37c/0xc50 net/ipv4/ip_output.c:325
 NF_HOOK_COND include/linux/netfilter.h:239 [inline]
 ip_output+0x1cd/0x510 net/ipv4/ip_output.c:413
 dst_output include/net/dst.h:470 [inline]
 ip_local_out+0x93/0x170 net/ipv4/ip_output.c:125
 iptunnel_xmit+0x5cc/0x950 net/ipv4/ip_tunnel_core.c:91
 ip_tunnel_xmit+0xedc/0x33e0 net/ipv4/ip_tunnel.c:799
 sit_tunnel_xmit__ net/ipv6/sit.c:1006 [inline]
 sit_tunnel_xmit+0x1ab/0x2130 net/ipv6/sit.c:1019
 __netdev_start_xmit include/linux/netdevice.h:4054 [inline]
 netdev_start_xmit include/linux/netdevice.h:4063 [inline]
 xmit_one net/core/dev.c:3005 [inline]
 dev_hard_start_xmit+0x188/0x890 net/core/dev.c:3021
 __dev_queue_xmit+0x1d7f/0x2480 net/core/dev.c:3521
 neigh_output include/net/neighbour.h:500 [inline]
 ip_finish_output2+0xba6/0x1340 net/ipv4/ip_output.c:237
 ip_finish_output+0x37c/0xc50 net/ipv4/ip_output.c:325
 NF_HOOK_COND include/linux/netfilter.h:239 [inline]
 ip_output+0x1cd/0x510 net/ipv4/ip_output.c:413
 dst_output include/net/dst.h:470 [inline]
 ip_local_out+0x93/0x170 net/ipv4/ip_output.c:125
 nf_dup_ipv4 net/ipv4/netfilter/nf_dup_ipv4.c:91 [inline]
 nf_dup_ipv4+0x4bb/0x680 net/ipv4/netfilter/nf_dup_ipv4.c:53
 tee_tg4+0x109/0x160 net/netfilter/xt_TEE.c:36
 ipt_do_table+0xa9d/0x16f0 net/ipv4/netfilter/ip_tables.c:353
 iptable_filter_hook+0x172/0x1e0 net/ipv4/netfilter/iptable_filter.c:47
 nf_hook_entry_hookfn include/linux/netfilter.h:108 [inline]
 nf_hook_slow+0xb0/0x1a0 net/netfilter/core.c:468
 nf_hook include/linux/netfilter.h:205 [inline]
 NF_HOOK include/linux/netfilter.h:248 [inline]
 ip_local_deliver+0x28c/0x460 net/ipv4/ip_input.c:257
 dst_input include/net/dst.h:476 [inline]
 ip_rcv_finish+0x6e3/0x19f0 net/ipv4/ip_input.c:396
 NF_HOOK include/linux/netfilter.h:250 [inline]
 ip_rcv+0x8a7/0xf10 net/ipv4/ip_input.c:493
 __netif_receive_skb_core+0x15ee/0x2a30 net/core/dev.c:4474
 __netif_receive_skb+0x27/0x1a0 net/core/dev.c:4512
 process_backlog+0x218/0x6f0 net/core/dev.c:5195
 napi_poll net/core/dev.c:5604 [inline]
 net_rx_action+0x466/0xfd0 net/core/dev.c:5670
 __do_softirq+0x24d/0x9ff kernel/softirq.c:288
 run_ksoftirqd+0x50/0x1a0 kernel/softirq.c:670
 smpboot_thread_fn+0x5c1/0x920 kernel/smpboot.c:164
 kthread+0x30d/0x420 kernel/kthread.c:232
 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:404
Code: 00 00 00 48 b8 00 00 00 00 00 fc ff df 41 56 41 55 49 89 d5 41 54 49 89 fc 55 48 89 f5 53 48 83 ec 48 48 c7 44 24 08 b3 8a b5 41 <48> 8d 5c 24 08 48 c7 44 24 10 68 5d b5 88 48 c1 eb 03 48 c7 44 
----------------
Code disassembly (best guess), 1 bytes skipped:
   0:	00 00                	add    %al,(%rax)
   2:	48 b8 00 00 00 00 00 	movabs $0xdffffc0000000000,%rax
   9:	fc ff df
   c:	41 56                	push   %r14
   e:	41 55                	push   %r13
  10:	49 89 d5             	mov    %rdx,%r13
  13:	41 54                	push   %r12
  15:	49 89 fc             	mov    %rdi,%r12
  18:	55                   	push   %rbp
  19:	48 89 f5             	mov    %rsi,%rbp
  1c:	53                   	push   %rbx
  1d:	48 83 ec 48          	sub    $0x48,%rsp
  21:	48 c7 44 24 08 b3 8a 	movq   $0x41b58ab3,0x8(%rsp)
  28:	b5 41
* 2a:	48 8d 5c 24 08       	lea    0x8(%rsp),%rbx <-- trapping instruction
  2f:	48 c7 44 24 10 68 5d 	movq   $0xffffffff88b55d68,0x10(%rsp)
  36:	b5 88
  38:	48 c1 eb 03          	shr    $0x3,%rbx
  3c:	48                   	rex.W
  3d:	c7                   	.byte 0xc7
  3e:	44                   	rex.R

Crashes (4):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2022/07/05 23:06 linux-4.14.y ed2e96e11936 bff65f44 .config console log report syz C ci2-linux-4-14 BUG: soft lockup in ip_rcv
2022/05/18 12:28 linux-4.14.y dffb5c6ff09c 744a39e2 .config console log report info ci2-linux-4-14 BUG: soft lockup in ip_rcv
2022/05/09 06:49 linux-4.14.y e3a56aaade89 e60b1103 .config console log report info ci2-linux-4-14 BUG: soft lockup in ip_rcv
2022/05/07 10:07 linux-4.14.y e3a56aaade89 e60b1103 .config console log report info ci2-linux-4-14 BUG: soft lockup in ip_rcv
* Struck through repros no longer work on HEAD.