syzbot


general protection fault in ip_sublist_rcv

Status: fixed on 2019/12/13 00:31
Subsystems: net
[Documentation on labels]
Fix commit: 51210ad5a558 inet: do not call sublist_rcv on empty list
First crash: 1660d, last: 1650d
Cause bisection: introduced by (bisect log) :
commit cd8ca41f236ffdeeeabe65ce2268c9f9b6c25ef2
Author: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Wed Oct 23 23:46:18 2019 +0000

  Merge remote-tracking branch 'netfilter-next/master'

Crash: general protection fault in ip_sublist_rcv (log)
Repro: C syz .config
  

Sample crash report:
kasan: CONFIG_KASAN_INLINE enabled
kasan: GPF could be caused by NULL-ptr deref or user memory access
general protection fault: 0000 [#1] PREEMPT SMP KASAN
CPU: 1 PID: 8962 Comm: syz-executor732 Not tainted 5.4.0-rc4-next-20191024 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:__read_once_size include/linux/compiler.h:199 [inline]
RIP: 0010:NF_HOOK_LIST include/linux/netfilter.h:328 [inline]
RIP: 0010:ip_sublist_rcv+0x5c0/0x940 net/ipv4/ip_input.c:578
Code: 0f 85 2f 01 00 00 e8 2f 76 5a fb 48 8b 85 00 ff ff ff 48 8d b8 e8 0e 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <80> 3c 02 00 0f 85 64 03 00 00 48 8b 85 00 ff ff ff 4c 8b a0 e8 0e
RSP: 0018:ffff8880ae9098e8 EFLAGS: 00010206
RAX: dffffc0000000000 RBX: 0000000000000000 RCX: ffffffff8618faa1
RDX: 00000000000001dd RSI: ffffffff8618f941 RDI: 0000000000000ee8
RBP: ffff8880ae909a10 R08: ffff8880a3a84200 R09: ffffed1015d26b7d
R10: ffffed1015d26b7c R11: ffff8880ae935be3 R12: 0000000000000001
R13: ffff888095b60000 R14: ffff8880ae909a78 R15: ffff8880ae9099e8
FS:  0000000001067880(0000) GS:ffff8880ae900000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000004 CR3: 0000000092a71000 CR4: 00000000001406e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <IRQ>
 ip_list_rcv+0x370/0x4ac net/ipv4/ip_input.c:614
 __netif_receive_skb_list_ptype net/core/dev.c:5274 [inline]
 __netif_receive_skb_list_core+0x5fc/0x9d0 net/core/dev.c:5322
 __netif_receive_skb_list net/core/dev.c:5374 [inline]
 netif_receive_skb_list_internal+0x7eb/0xe50 net/core/dev.c:5469
 gro_normal_list.part.0+0x1e/0xb0 net/core/dev.c:5892
 gro_normal_list net/core/dev.c:5905 [inline]
 gro_normal_one+0x184/0x1d0 net/core/dev.c:5904
 napi_skb_finish net/core/dev.c:5920 [inline]
 napi_gro_receive+0x5eb/0x770 net/core/dev.c:5952
 gro_cell_poll+0x132/0x1f0 net/core/gro_cells.c:60
 napi_poll net/core/dev.c:6614 [inline]
 net_rx_action+0x508/0x1120 net/core/dev.c:6682
 __do_softirq+0x262/0x98c kernel/softirq.c:292
 do_softirq_own_stack+0x2a/0x40 arch/x86/entry/entry_64.S:1082
 </IRQ>
 do_softirq.part.0+0x11a/0x170 kernel/softirq.c:337
 do_softirq kernel/softirq.c:329 [inline]
 __local_bh_enable_ip+0x211/0x270 kernel/softirq.c:189
 local_bh_enable include/linux/bottom_half.h:32 [inline]
 tun_get_user+0x2ea4/0x3f80 drivers/net/tun.c:1977
 tun_chr_write_iter+0xbd/0x156 drivers/net/tun.c:2022
 call_write_iter include/linux/fs.h:1902 [inline]
 do_iter_readv_writev+0x5f8/0x8f0 fs/read_write.c:693
 do_iter_write fs/read_write.c:970 [inline]
 do_iter_write+0x184/0x610 fs/read_write.c:951
 vfs_writev+0x1b3/0x2f0 fs/read_write.c:1015
 do_writev+0x15b/0x330 fs/read_write.c:1058
 __do_sys_writev fs/read_write.c:1131 [inline]
 __se_sys_writev fs/read_write.c:1128 [inline]
 __x64_sys_writev+0x75/0xb0 fs/read_write.c:1128
 do_syscall_64+0xfa/0x760 arch/x86/entry/common.c:290
 entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x442d30
Code: 05 48 3d 01 f0 ff ff 0f 83 5d 09 fc ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 83 3d e1 92 29 00 00 75 14 b8 14 00 00 00 0f 05 <48> 3d 01 f0 ff ff 0f 83 34 09 fc ff c3 48 83 ec 08 e8 ba 2b 00 00
RSP: 002b:00007ffc7c1b8c18 EFLAGS: 00000246 ORIG_RAX: 0000000000000014
RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 0000000000442d30
RDX: 0000000000000001 RSI: 00007ffc7c1b8c60 RDI: 00000000000000f0
RBP: 0000000000012690 R08: 0000000000000000 R09: 00000000bb1414ac
R10: 00000000ffffffff R11: 0000000000000246 R12: 00007ffc7c1b8c60
R13: 0000000000403b80 R14: 0000000000000000 R15: 0000000000000000
Modules linked in:
---[ end trace 3b95d77a6bc533ea ]---
RIP: 0010:__read_once_size include/linux/compiler.h:199 [inline]
RIP: 0010:NF_HOOK_LIST include/linux/netfilter.h:328 [inline]
RIP: 0010:ip_sublist_rcv+0x5c0/0x940 net/ipv4/ip_input.c:578
Code: 0f 85 2f 01 00 00 e8 2f 76 5a fb 48 8b 85 00 ff ff ff 48 8d b8 e8 0e 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <80> 3c 02 00 0f 85 64 03 00 00 48 8b 85 00 ff ff ff 4c 8b a0 e8 0e
RSP: 0018:ffff8880ae9098e8 EFLAGS: 00010206
RAX: dffffc0000000000 RBX: 0000000000000000 RCX: ffffffff8618faa1
RDX: 00000000000001dd RSI: ffffffff8618f941 RDI: 0000000000000ee8
RBP: ffff8880ae909a10 R08: ffff8880a3a84200 R09: ffffed1015d26b7d
R10: ffffed1015d26b7c R11: ffff8880ae935be3 R12: 0000000000000001
R13: ffff888095b60000 R14: ffff8880ae909a78 R15: ffff8880ae9099e8
FS:  0000000001067880(0000) GS:ffff8880ae900000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000004 CR3: 0000000092a71000 CR4: 00000000001406e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400

Crashes (287):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2019/10/24 21:49 linux-next 12d61c699699 d01bb02a .config console log report syz C ci-upstream-linux-next-kasan-gce-root
2019/10/30 07:55 net-next-old 92d72f1b8bbb 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/30 05:43 net-next-old 92d72f1b8bbb 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/30 03:01 net-next-old 92d72f1b8bbb 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/29 23:42 net-next-old 92d72f1b8bbb 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/29 22:26 net-next-old 92d72f1b8bbb 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/29 21:18 net-next-old 92d72f1b8bbb 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/29 19:41 net-next-old 92d72f1b8bbb 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/29 18:25 net-next-old d5a721c96a44 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/29 16:53 net-next-old d5a721c96a44 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/29 15:27 net-next-old d5a721c96a44 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/29 14:17 net-next-old d5a721c96a44 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/29 12:44 net-next-old d5a721c96a44 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/29 10:42 net-next-old d5a721c96a44 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/29 09:31 net-next-old d5a721c96a44 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/29 08:38 net-next-old d5a721c96a44 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/29 07:03 net-next-old d5a721c96a44 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/29 06:01 net-next-old d5a721c96a44 5ea87a66 .config console log report ci-upstream-net-kasan-gce
2019/10/29 04:28 net-next-old f0d532c43073 439d7b14 .config console log report ci-upstream-net-kasan-gce
2019/10/29 03:26 net-next-old f0d532c43073 439d7b14 .config console log report ci-upstream-net-kasan-gce
2019/10/29 02:09 net-next-old f0d532c43073 439d7b14 .config console log report ci-upstream-net-kasan-gce
2019/10/29 00:39 net-next-old f0d532c43073 439d7b14 .config console log report ci-upstream-net-kasan-gce
2019/10/28 23:21 net-next-old f0d532c43073 439d7b14 .config console log report ci-upstream-net-kasan-gce
2019/10/28 21:07 net-next-old f0d532c43073 439d7b14 .config console log report ci-upstream-net-kasan-gce
2019/10/28 19:52 net-next-old 5b7fe93db008 439d7b14 .config console log report ci-upstream-net-kasan-gce
2019/10/28 17:37 net-next-old 5b7fe93db008 439d7b14 .config console log report ci-upstream-net-kasan-gce
2019/10/28 16:07 net-next-old 5b7fe93db008 439d7b14 .config console log report ci-upstream-net-kasan-gce
2019/10/28 14:55 net-next-old 5b7fe93db008 25bb509e .config console log report ci-upstream-net-kasan-gce
2019/10/28 12:24 net-next-old 5b7fe93db008 25bb509e .config console log report ci-upstream-net-kasan-gce
2019/10/28 09:59 net-next-old 5b7fe93db008 25bb509e .config console log report ci-upstream-net-kasan-gce
2019/10/28 09:50 net-next-old 5b7fe93db008 25bb509e .config console log report ci-upstream-net-kasan-gce
2019/10/28 07:22 net-next-old 5b7fe93db008 25bb509e .config console log report ci-upstream-net-kasan-gce
2019/10/31 06:35 linux-next fdbc6c104f95 a41ca8fa .config console log report ci-upstream-linux-next-kasan-gce-root
2019/10/31 02:02 linux-next fdbc6c104f95 a41ca8fa .config console log report ci-upstream-linux-next-kasan-gce-root
2019/10/31 01:01 linux-next fdbc6c104f95 a41ca8fa .config console log report ci-upstream-linux-next-kasan-gce-root
2019/10/30 22:39 linux-next fdbc6c104f95 a41ca8fa .config console log report ci-upstream-linux-next-kasan-gce-root
2019/10/30 20:59 linux-next fdbc6c104f95 a41ca8fa .config console log report ci-upstream-linux-next-kasan-gce-root
2019/10/30 14:48 linux-next fdbc6c104f95 5ea87a66 .config console log report ci-upstream-linux-next-kasan-gce-root
2019/10/30 12:55 linux-next fdbc6c104f95 5ea87a66 .config console log report ci-upstream-linux-next-kasan-gce-root
2019/10/30 09:27 linux-next fdbc6c104f95 5ea87a66 .config console log report ci-upstream-linux-next-kasan-gce-root
2019/10/30 01:21 linux-next c57cf3833c66 5ea87a66 .config console log report ci-upstream-linux-next-kasan-gce-root
2019/10/29 18:16 linux-next c57cf3833c66 5ea87a66 .config console log report ci-upstream-linux-next-kasan-gce-root
2019/10/28 22:15 linux-next 60c1769a45f4 439d7b14 .config console log report ci-upstream-linux-next-kasan-gce-root
2019/10/28 18:44 linux-next 60c1769a45f4 439d7b14 .config console log report ci-upstream-linux-next-kasan-gce-root
2019/10/28 13:50 linux-next 60c1769a45f4 25bb509e .config console log report ci-upstream-linux-next-kasan-gce-root
2019/10/21 07:56 linux-next a6fcdcd94927 8c88c9c1 .config console log report ci-upstream-linux-next-kasan-gce-root
* Struck through repros no longer work on HEAD.