syzbot has found a reproducer for the following crash on:
HEAD commit: 68d7a45e Linux 4.14.113
git tree: linux-4.14.y
console output:
https://syzkaller.appspot.com/x/log.txt?x=146b51cb200000
kernel config:
https://syzkaller.appspot.com/x/.config?x=dbf1fde4d7489e1c
syz repro:
https://syzkaller.appspot.com/x/repro.syz?x=1046ad6b200000
C reproducer:
https://syzkaller.appspot.com/x/repro.c?x=166a5730a00000
R13: 00007ffc50e8467f R14: 00007faf5fa079c0 R15: 0000000000000000
FAULT_INJECTION: forcing a failure.
name failslab, interval 1, probability 0, space 0, times 0
------------[ cut here ]------------
CPU: 0 PID: 7103 Comm: syz-executor693 Not tainted 4.14.113 #3
kernel BUG at net/core/skbuff.c:2644!
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS
Google 01/01/2011
invalid opcode: 0000 [#1] PREEMPT SMP KASAN
Call Trace:
Modules linked in:
__dump_stack lib/dump_stack.c:17 [inline]
dump_stack+0x138/0x19c lib/dump_stack.c:53
CPU: 1 PID: 0 Comm: swapper/1 Not tainted 4.14.113 #3
fail_dump lib/fault-inject.c:51 [inline]
should_fail.cold+0x10f/0x159 lib/fault-inject.c:149
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS
Google 01/01/2011
task: ffff8880a9d1c340 task.stack: ffff8880a9d28000
should_failslab+0xdb/0x130 mm/failslab.c:32
RIP: 0010:skb_copy_and_csum_bits+0x65c/0x740 net/core/skbuff.c:2644
slab_pre_alloc_hook mm/slab.h:421 [inline]
slab_alloc mm/slab.c:3376 [inline]
kmem_cache_alloc+0x2d9/0x780 mm/slab.c:3550
RSP: 0018:ffff8880aef072d8 EFLAGS: 00010206
kmem_cache_zalloc include/linux/slab.h:651 [inline]
taskstats_tgid_alloc kernel/taskstats.c:577 [inline]
taskstats_exit+0x619/0xbd0 kernel/taskstats.c:610
RAX: ffff8880a9d1c340 RBX: 0000000000000000 RCX: ffff888094e5e34c
RDX: 0000000000000100 RSI: ffff888091dca968 RDI: ffff88808f8f3dc8
RBP: ffff8880aef07360 R08: 0000000000000000 R09: 0000000000000000
R10: 000000000000003c R11: ffff888091dcabe3 R12: 000000008c410295
do_exit+0x368/0x2c10 kernel/exit.c:859
R13: 0000000000000000 R14: 000000000000003c R15: ffff88808f8f3dc0
FS: 0000000000000000(0000) GS:ffff8880aef00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
do_group_exit+0x111/0x330 kernel/exit.c:977
CR2: 00007faf5fa06db8 CR3: 000000009e0a5000 CR4: 00000000001406e0
get_signal+0x348/0x1a80 kernel/signal.c:2407
Call Trace:
<IRQ>
do_signal+0x86/0x1980 arch/x86/kernel/signal.c:809
icmp_glue_bits+0x7f/0x1d0 net/ipv4/icmp.c:357
__ip_append_data.isra.0+0x1570/0x20c0 net/ipv4/ip_output.c:1020
exit_to_usermode_loop+0x15c/0x220 arch/x86/entry/common.c:159
ip_append_data.part.0+0xde/0x150 net/ipv4/ip_output.c:1173
prepare_exit_to_usermode arch/x86/entry/common.c:198 [inline]
syscall_return_slowpath arch/x86/entry/common.c:267 [inline]
do_syscall_64+0x4a9/0x630 arch/x86/entry/common.c:294
ip_append_data+0x5b/0x80 net/ipv4/ip_output.c:1162
entry_SYSCALL_64_after_hwframe+0x42/0xb7
icmp_push_reply+0x189/0x500 net/ipv4/icmp.c:375
RIP: 0033:0x448109
__icmp_send+0x979/0x11f0 net/ipv4/icmp.c:742
RSP: 002b:00007faf5fa06cb8 EFLAGS: 00000246
ORIG_RAX: 0000000000000133
RAX: ffffffffffffffe0 RBX: 00007faf5fa06cc0 RCX: 0000000000448109
RDX: 000000000000003c RSI: 0000000020004f40 RDI: 0000000000000004
RBP: 0000000000000006 R08: 0000000000000001 R09: 0000000000000032
R10: 0000000000000000 R11: 0000000000000246 R12: 00000000006ddc2c
icmp_send include/net/icmp.h:47 [inline]
ip_fragment net/ipv4/ip_output.c:554 [inline]
ip_fragment.constprop.0+0x1b6/0x200 net/ipv4/ip_output.c:541
R13: 00007ffc50e8467f R14: 00007faf5fa079c0 R15: 0000000000000000
ip_finish_output+0x7c8/0xc70 net/ipv4/ip_output.c:315
NF_HOOK_COND include/linux/netfilter.h:239 [inline]
ip_output+0x1e6/0x590 net/ipv4/ip_output.c:405
dst_output include/net/dst.h:459 [inline]
ip_local_out+0x9c/0x180 net/ipv4/ip_output.c:124
ip_queue_xmit+0x7d7/0x1b10 net/ipv4/ip_output.c:504
__tcp_transmit_skb+0x1744/0x3000 net/ipv4/tcp_output.c:1130
tcp_transmit_skb net/ipv4/tcp_output.c:1146 [inline]
__tcp_retransmit_skb+0x53b/0x1bb0 net/ipv4/tcp_output.c:2915
tcp_retransmit_skb+0x2e/0x230 net/ipv4/tcp_output.c:2929
tcp_retransmit_timer+0x825/0x2580 net/ipv4/tcp_timer.c:493
tcp_write_timer_handler+0x482/0x7e0 net/ipv4/tcp_timer.c:578
tcp_write_timer+0xd8/0x180 net/ipv4/tcp_timer.c:596
call_timer_fn+0x164/0x680 kernel/time/timer.c:1279
expire_timers kernel/time/timer.c:1318 [inline]
__run_timers kernel/time/timer.c:1634 [inline]
__run_timers kernel/time/timer.c:1602 [inline]
run_timer_softirq+0x5b4/0x1570 kernel/time/timer.c:1647
__do_softirq+0x24e/0x9ae kernel/softirq.c:288
invoke_softirq kernel/softirq.c:368 [inline]
irq_exit+0x160/0x1b0 kernel/softirq.c:409
exiting_irq arch/x86/include/asm/apic.h:648 [inline]
smp_apic_timer_interrupt+0x156/0x600 arch/x86/kernel/apic/apic.c:1064
apic_timer_interrupt+0x8e/0xa0 arch/x86/entry/entry_64.S:787
</IRQ>
RIP: 0010:native_safe_halt+0x2/0x10 arch/x86/include/asm/irqflags.h:58
RSP: 0018:ffff8880a9d2fe70 EFLAGS: 00000286 ORIG_RAX: ffffffffffffff10
RAX: 1ffffffff0ee2968 RBX: ffff8880a9d1c340 RCX: 0000000000000000
RDX: dffffc0000000000 RSI: 0000000000000001 RDI: ffff8880a9d1cbbc
RBP: ffff8880a9d2fe98 R08: 1ffffffff1049901 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: ffffffff87714b30
R13: 0000000000000000 R14: 0000000000000000 R15: ffff8880a9d1c340
arch_cpu_idle+0x10/0x20 arch/x86/kernel/process.c:555
default_idle_call+0x36/0x90 kernel/sched/idle.c:98
cpuidle_idle_call kernel/sched/idle.c:156 [inline]
do_idle+0x262/0x3d0 kernel/sched/idle.c:246
cpu_startup_entry+0x1b/0x20 kernel/sched/idle.c:351
start_secondary+0x362/0x4d0 arch/x86/kernel/smpboot.c:272
secondary_startup_64+0xa5/0xb0 arch/x86/kernel/head_64.S:240
Code: d4 49 01 c7 44 89 75 bc 4c 89 7d c0 e9 75 fa ff ff 44 8b 65 d4 e9 61
ff ff ff e8 e0 d1 8d fc 0f 0b e9 94 fe ff ff e8 d4 d1 8d fc <0f> 0b e8 ed
76 b7 fc e9 7e fd ff ff 48 8b bd 78 ff ff ff e8 dc
RIP: skb_copy_and_csum_bits+0x65c/0x740 net/core/skbuff.c:2644 RSP:
ffff8880aef072d8
---[ end trace 6f021a7cc2fdba49 ]---