syzbot


KCSAN: data-race in __udp4_lib_mcast_deliver / udp_lib_unhash (2)

Status: auto-obsoleted due to no activity on 2025/08/18 23:06
Subsystems: net
[Documentation on labels]
First crash: 70d, last: 70d
Similar bugs (1)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in __udp4_lib_mcast_deliver / udp_lib_unhash net 6 2 172d 194d 0/29 auto-obsoleted due to no activity on 2025/05/08 13:48

Sample crash report:
==================================================================
BUG: KCSAN: data-race in __udp4_lib_mcast_deliver / udp_lib_unhash

read-write to 0xffff888101a8a588 of 4 bytes by task 9732 on cpu 1:
 udp_lib_unhash+0x230/0x560 net/ipv4/udp.c:2213
 sk_common_release+0x7a/0x220 net/core/sock.c:3961
 udp_lib_close+0x15/0x20 include/net/udp.h:312
 inet_release+0xcb/0xf0 net/ipv4/af_inet.c:435
 inet6_release+0x3e/0x60 net/ipv6/af_inet6.c:487
 __sock_release net/socket.c:647 [inline]
 sock_close+0x6b/0x150 net/socket.c:1391
 __fput+0x298/0x650 fs/file_table.c:465
 ____fput+0x1c/0x30 fs/file_table.c:493
 task_work_run+0x12e/0x1a0 kernel/task_work.c:227
 resume_user_mode_work include/linux/resume_user_mode.h:50 [inline]
 exit_to_user_mode_loop+0xe4/0x100 kernel/entry/common.c:114
 exit_to_user_mode_prepare include/linux/entry-common.h:330 [inline]
 syscall_exit_to_user_mode_work include/linux/entry-common.h:414 [inline]
 syscall_exit_to_user_mode include/linux/entry-common.h:449 [inline]
 do_syscall_64+0x1d6/0x200 arch/x86/entry/syscall_64.c:100
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

read to 0xffff888101a8a588 of 4 bytes by task 9728 on cpu 0:
 __udp4_lib_mcast_deliver+0x9a/0x760 net/ipv4/udp.c:2512
 __udp4_lib_rcv+0x96e/0x1250 net/ipv4/udp.c:2697
 udp_rcv+0x4f/0x60 net/ipv4/udp.c:2884
 ip_protocol_deliver_rcu+0x3f9/0x780 net/ipv4/ip_input.c:205
 ip_local_deliver_finish+0x184/0x220 net/ipv4/ip_input.c:233
 NF_HOOK include/linux/netfilter.h:317 [inline]
 ip_local_deliver+0xe8/0x1c0 net/ipv4/ip_input.c:254
 dst_input include/net/dst.h:469 [inline]
 ip_sublist_rcv_finish net/ipv4/ip_input.c:578 [inline]
 ip_list_rcv_finish net/ipv4/ip_input.c:619 [inline]
 ip_sublist_rcv+0x3d8/0x650 net/ipv4/ip_input.c:635
 ip_list_rcv+0x261/0x290 net/ipv4/ip_input.c:669
 __netif_receive_skb_list_ptype net/core/dev.c:6020 [inline]
 __netif_receive_skb_list_core+0x4dc/0x500 net/core/dev.c:6067
 __netif_receive_skb_list net/core/dev.c:6119 [inline]
 netif_receive_skb_list_internal+0x487/0x600 net/core/dev.c:6210
 netif_receive_skb_list+0x31/0x200 net/core/dev.c:6262
 xdp_recv_frames net/bpf/test_run.c:280 [inline]
 xdp_test_run_batch net/bpf/test_run.c:361 [inline]
 bpf_test_run_xdp_live+0xdcb/0xfe0 net/bpf/test_run.c:390
 bpf_prog_test_run_xdp+0x4f5/0x910 net/bpf/test_run.c:1322
 bpf_prog_test_run+0x22a/0x390 kernel/bpf/syscall.c:4429
 __sys_bpf+0x3dc/0x790 kernel/bpf/syscall.c:5854
 __do_sys_bpf kernel/bpf/syscall.c:5943 [inline]
 __se_sys_bpf kernel/bpf/syscall.c:5941 [inline]
 __x64_sys_bpf+0x41/0x50 kernel/bpf/syscall.c:5941
 x64_sys_call+0x2478/0x2fb0 arch/x86/include/generated/asm/syscalls_64.h:322
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xd2/0x200 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

value changed: 0x00000001 -> 0x00000000

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 UID: 0 PID: 9728 Comm: syz.3.1363 Tainted: G        W           6.16.0-rc3-syzkaller #0 PREEMPT(voluntary) 
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025
==================================================================

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/06/23 23:00 upstream 86731a2a651e e2f27c35 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __udp4_lib_mcast_deliver / udp_lib_unhash
* Struck through repros no longer work on HEAD.