syzbot


KCSAN: data-race in __ip4_datagram_connect / raw_bind

Status: fixed on 2019/12/13 00:31
Subsystems: net
[Documentation on labels]
Fix commit: 25c7a6d1f90e net: avoid potential false sharing in neighbor related code
First crash: 1865d, last: 1865d
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in __ip4_datagram_connect / raw_bind (2) net 1 1043d 1043d 22/28 fixed on 2023/02/24 13:50

Sample crash report:
==================================================================
BUG: KCSAN: data-race in __ip4_datagram_connect / raw_bind

write to 0xffff88811dac1d88 of 4 bytes by task 9136 on cpu 0:
 sk_dst_set include/net/sock.h:1915 [inline]
 sk_dst_reset include/net/sock.h:1929 [inline]
 raw_bind+0x20d/0x300 net/ipv4/raw.c:740
 inet_bind+0x6a/0x110 net/ipv4/af_inet.c:441
 __sys_bind+0x1df/0x220 net/socket.c:1647
 __do_sys_bind net/socket.c:1658 [inline]
 __se_sys_bind net/socket.c:1656 [inline]
 __x64_sys_bind+0x4c/0x60 net/socket.c:1656
 do_syscall_64+0xcc/0x370 arch/x86/entry/common.c:290
 entry_SYSCALL_64_after_hwframe+0x44/0xa9

write to 0xffff88811dac1d88 of 4 bytes by task 9140 on cpu 1:
 sk_dst_set include/net/sock.h:1915 [inline]
 sk_dst_reset include/net/sock.h:1929 [inline]
 __ip4_datagram_connect+0xa9/0x830 net/ipv4/datagram.c:37
 ip4_datagram_connect+0x39/0x60 net/ipv4/datagram.c:90
 inet_dgram_connect+0xcf/0x1a0 net/ipv4/af_inet.c:571
 __sys_connect+0x1e9/0x250 net/socket.c:1828
 __do_sys_connect net/socket.c:1839 [inline]
 __se_sys_connect net/socket.c:1836 [inline]
 __x64_sys_connect+0x4c/0x60 net/socket.c:1836
 do_syscall_64+0xcc/0x370 arch/x86/entry/common.c:290
 entry_SYSCALL_64_after_hwframe+0x44/0xa9

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 PID: 9140 Comm: syz-executor.2 Not tainted 5.4.0-rc3+ #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
==================================================================
Kernel panic - not syncing: panic_on_warn set ...
CPU: 1 PID: 9140 Comm: syz-executor.2 Not tainted 5.4.0-rc3+ #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 __dump_stack lib/dump_stack.c:77 [inline]
 dump_stack+0xf5/0x159 lib/dump_stack.c:113
 panic+0x210/0x640 kernel/panic.c:221
 kcsan_report.cold+0xc/0x10 kernel/kcsan/report.c:302
 __kcsan_setup_watchpoint+0x32e/0x4a0 kernel/kcsan/core.c:411
 __tsan_write4 kernel/kcsan/kcsan.c:35 [inline]
 __tsan_write4+0x32/0x40 kernel/kcsan/kcsan.c:35
 sk_dst_set include/net/sock.h:1915 [inline]
 sk_dst_reset include/net/sock.h:1929 [inline]
 __ip4_datagram_connect+0xa9/0x830 net/ipv4/datagram.c:37
 ip4_datagram_connect+0x39/0x60 net/ipv4/datagram.c:90
 inet_dgram_connect+0xcf/0x1a0 net/ipv4/af_inet.c:571
 __sys_connect+0x1e9/0x250 net/socket.c:1828
 __do_sys_connect net/socket.c:1839 [inline]
 __se_sys_connect net/socket.c:1836 [inline]
 __x64_sys_connect+0x4c/0x60 net/socket.c:1836
 do_syscall_64+0xcc/0x370 arch/x86/entry/common.c:290
 entry_SYSCALL_64_after_hwframe+0x44/0xa9
RIP: 0033:0x459f39
Code: ad b6 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 0f 83 7b b6 fb ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007f21cb401c78 EFLAGS: 00000246 ORIG_RAX: 000000000000002a
RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 0000000000459f39
RDX: 0000000000000010 RSI: 0000000020000040 RDI: 0000000000000003
RBP: 000000000075bfc8 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007f21cb4026d4
R13: 00000000004c0644 R14: 00000000004d2bd0 R15: 00000000ffffffff
Kernel Offset: disabled
Rebooting in 86400 seconds..

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2019/10/26 02:55 https://github.com/google/ktsan.git kcsan 05f2236801fe 413926c5 .config console log report ci2-upstream-kcsan-gce
* Struck through repros no longer work on HEAD.