syzbot


KMSAN: uninit-value in __udp4_lib_rcv (2)

Status: closed as invalid on 2018/04/22 15:44
Subsystems: net
[Documentation on labels]
First crash: 2600d, last: 2600d
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KMSAN: uninit-value in __udp4_lib_rcv net C 13 2601d 2603d 0/28 closed as invalid on 2018/04/22 10:58

Sample crash report:
==================================================================
BUG: KMSAN: uninit-value in __skb_checksum_validate_needed include/linux/skbuff.h:3647 [inline]
BUG: KMSAN: uninit-value in udp4_csum_init net/ipv4/udp.c:2037 [inline]
BUG: KMSAN: uninit-value in __udp4_lib_rcv+0xe5e/0x4ae0 net/ipv4/udp.c:2076
CPU: 1 PID: 6644 Comm: syz-executor6 Not tainted 4.16.0+ #85
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 <IRQ>
 __dump_stack lib/dump_stack.c:17 [inline]
 dump_stack+0x185/0x1d0 lib/dump_stack.c:53
 kmsan_report+0x142/0x240 mm/kmsan/kmsan.c:1067
 __msan_warning_32+0x6c/0xb0 mm/kmsan/kmsan_instr.c:683
 __skb_checksum_validate_needed include/linux/skbuff.h:3647 [inline]
 udp4_csum_init net/ipv4/udp.c:2037 [inline]
 __udp4_lib_rcv+0xe5e/0x4ae0 net/ipv4/udp.c:2076
 udp_rcv+0x5c/0x70 net/ipv4/udp.c:2287
 ip_local_deliver_finish+0x874/0xec0 net/ipv4/ip_input.c:216
 NF_HOOK include/linux/netfilter.h:288 [inline]
 ip_local_deliver+0x43c/0x4e0 net/ipv4/ip_input.c:257
 dst_input include/net/dst.h:449 [inline]
 ip_rcv_finish+0xa36/0x1d00 net/ipv4/ip_input.c:397
 NF_HOOK include/linux/netfilter.h:288 [inline]
 ip_rcv+0x118f/0x16d0 net/ipv4/ip_input.c:493
 __netif_receive_skb_core+0x47df/0x4a90 net/core/dev.c:4562
 __netif_receive_skb net/core/dev.c:4627 [inline]
 process_backlog+0x62d/0xe20 net/core/dev.c:5307
 napi_poll net/core/dev.c:5705 [inline]
 net_rx_action+0x7c1/0x1a70 net/core/dev.c:5771
 __do_softirq+0x56d/0x93d kernel/softirq.c:285
 do_softirq_own_stack+0x2a/0x40 arch/x86/entry/entry_64.S:1040
 </IRQ>
 do_softirq kernel/softirq.c:329 [inline]
 __local_bh_enable_ip+0x114/0x140 kernel/softirq.c:182
 local_bh_enable+0x36/0x40 include/linux/bottom_half.h:32
 rcu_read_unlock_bh include/linux/rcupdate.h:726 [inline]
 ip_finish_output2+0x135a/0x1470 net/ipv4/ip_output.c:231
 ip_finish_output+0xcb2/0xff0 net/ipv4/ip_output.c:317
 NF_HOOK_COND include/linux/netfilter.h:277 [inline]
 ip_output+0x505/0x5d0 net/ipv4/ip_output.c:405
 dst_output include/net/dst.h:443 [inline]
 ip_local_out net/ipv4/ip_output.c:124 [inline]
 ip_send_skb+0x173/0x350 net/ipv4/ip_output.c:1414
 udp_send_skb+0xeb6/0x1310 net/ipv4/udp.c:809
 udp_push_pending_frames net/ipv4/udp.c:837 [inline]
 udp_sendpage+0x726/0x960 net/ipv4/udp.c:1155
 inet_sendpage+0x4ea/0x8c0 net/ipv4/af_inet.c:781
 kernel_sendpage net/socket.c:3234 [inline]
 sock_sendpage+0x1de/0x2c0 net/socket.c:855
 pipe_to_sendpage+0x31b/0x430 fs/splice.c:451
 splice_from_pipe_feed fs/splice.c:502 [inline]
 __splice_from_pipe+0x49a/0xf30 fs/splice.c:626
 splice_from_pipe fs/splice.c:661 [inline]
 generic_splice_sendpage+0x1c6/0x2a0 fs/splice.c:832
 do_splice_from fs/splice.c:851 [inline]
 direct_splice_actor+0x19b/0x200 fs/splice.c:1018
 splice_direct_to_actor+0x764/0x1040 fs/splice.c:973
 do_splice_direct+0x335/0x540 fs/splice.c:1061
 do_sendfile+0x1067/0x1e40 fs/read_write.c:1413
 SYSC_sendfile64+0x1b3/0x300 fs/read_write.c:1468
 SyS_sendfile64+0x64/0x90 fs/read_write.c:1460
 do_syscall_64+0x309/0x430 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x3d/0xa2
RIP: 0033:0x455389
RSP: 002b:00007f140f276c68 EFLAGS: 00000246 ORIG_RAX: 0000000000000028
RAX: ffffffffffffffda RBX: 00007f140f2776d4 RCX: 0000000000455389
RDX: 00000000205faff8 RSI: 0000000000000014 RDI: 0000000000000013
RBP: 000000000072bea0 R08: 0000000000000000 R09: 0000000000000000
R10: 000000000000ff7b R11: 0000000000000246 R12: 00000000ffffffff
R13: 00000000000004cf R14: 00000000006fa408 R15: 0000000000000000

Uninit was stored to memory at:
 kmsan_save_stack_with_flags mm/kmsan/kmsan.c:278 [inline]
 kmsan_save_stack mm/kmsan/kmsan.c:293 [inline]
 kmsan_internal_chain_origin+0x12b/0x210 mm/kmsan/kmsan.c:684
 __msan_chain_origin+0x69/0xc0 mm/kmsan/kmsan_instr.c:528
 udp_send_skb+0x108b/0x1310 net/ipv4/udp.c:804
 udp_push_pending_frames net/ipv4/udp.c:837 [inline]
 udp_sendpage+0x726/0x960 net/ipv4/udp.c:1155
 inet_sendpage+0x4ea/0x8c0 net/ipv4/af_inet.c:781
 kernel_sendpage net/socket.c:3234 [inline]
 sock_sendpage+0x1de/0x2c0 net/socket.c:855
 pipe_to_sendpage+0x31b/0x430 fs/splice.c:451
 splice_from_pipe_feed fs/splice.c:502 [inline]
 __splice_from_pipe+0x49a/0xf30 fs/splice.c:626
 splice_from_pipe fs/splice.c:661 [inline]
 generic_splice_sendpage+0x1c6/0x2a0 fs/splice.c:832
 do_splice_from fs/splice.c:851 [inline]
 direct_splice_actor+0x19b/0x200 fs/splice.c:1018
 splice_direct_to_actor+0x764/0x1040 fs/splice.c:973
 do_splice_direct+0x335/0x540 fs/splice.c:1061
 do_sendfile+0x1067/0x1e40 fs/read_write.c:1413
 SYSC_sendfile64+0x1b3/0x300 fs/read_write.c:1468
 SyS_sendfile64+0x64/0x90 fs/read_write.c:1460
 do_syscall_64+0x309/0x430 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x3d/0xa2
Uninit was stored to memory at:
 kmsan_save_stack_with_flags mm/kmsan/kmsan.c:278 [inline]
 kmsan_save_stack mm/kmsan/kmsan.c:293 [inline]
 kmsan_internal_chain_origin+0x12b/0x210 mm/kmsan/kmsan.c:684
 __msan_chain_origin+0x69/0xc0 mm/kmsan/kmsan_instr.c:528
 ip_append_page+0x1174/0x1fc0 net/ipv4/ip_output.c:1287
 udp_sendpage+0x2d6/0x960 net/ipv4/udp.c:1141
 inet_sendpage+0x4ea/0x8c0 net/ipv4/af_inet.c:781
 kernel_sendpage net/socket.c:3234 [inline]
 sock_sendpage+0x1de/0x2c0 net/socket.c:855
 pipe_to_sendpage+0x31b/0x430 fs/splice.c:451
 splice_from_pipe_feed fs/splice.c:502 [inline]
 __splice_from_pipe+0x49a/0xf30 fs/splice.c:626
 splice_from_pipe fs/splice.c:661 [inline]
 generic_splice_sendpage+0x1c6/0x2a0 fs/splice.c:832
 do_splice_from fs/splice.c:851 [inline]
 direct_splice_actor+0x19b/0x200 fs/splice.c:1018
 splice_direct_to_actor+0x764/0x1040 fs/splice.c:973
 do_splice_direct+0x335/0x540 fs/splice.c:1061
 do_sendfile+0x1067/0x1e40 fs/read_write.c:1413
 SYSC_sendfile64+0x1b3/0x300 fs/read_write.c:1468
 SyS_sendfile64+0x64/0x90 fs/read_write.c:1460
 do_syscall_64+0x309/0x430 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x3d/0xa2
Uninit was created at:
 kmsan_save_stack_with_flags mm/kmsan/kmsan.c:278 [inline]
 kmsan_alloc_meta_for_pages+0x161/0x3a0 mm/kmsan/kmsan.c:814
 kmsan_alloc_page+0x82/0xe0 mm/kmsan/kmsan.c:868
 __alloc_pages_nodemask+0xf5b/0x5dc0 mm/page_alloc.c:4283
 alloc_pages_vma+0xcc8/0x1800 mm/mempolicy.c:2019
 shmem_alloc_page mm/shmem.c:1471 [inline]
 shmem_alloc_and_acct_page+0x6d5/0x1000 mm/shmem.c:1496
 shmem_getpage_gfp+0x35db/0x5770 mm/shmem.c:1771
 shmem_getpage mm/shmem.c:131 [inline]
 shmem_fallocate+0xde2/0x1610 mm/shmem.c:2939
 vfs_fallocate+0x9dc/0xde0 fs/open.c:319
 SYSC_fallocate+0x119/0x1d0 fs/open.c:342
 SyS_fallocate+0x64/0x90 fs/open.c:336
 do_syscall_64+0x309/0x430 arch/x86/entry/common.c:287
 entry_SYSCALL_64_after_hwframe+0x3d/0xa2
==================================================================

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2018/04/22 14:22 https://github.com/google/kmsan.git master a7f95e9c8a95 d23fcf6c .config console log report ci-upstream-kmsan-gce
* Struck through repros no longer work on HEAD.