syzbot


KCSAN: data-race in bond_rcv_validate / bond_rcv_validate

Status: auto-obsoleted due to no activity on 2025/03/18 17:20
Subsystems: net
[Documentation on labels]
First crash: 218d, last: 218d

Sample crash report:
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)
==================================================================
BUG: KCSAN: data-race in bond_rcv_validate / bond_rcv_validate

write to 0xffff88813a85f028 of 8 bytes by interrupt on cpu 0:
 bond_rcv_validate+0x255/0x7c0 drivers/net/bonding/bond_main.c:3502
 bond_handle_frame+0xdd/0x5c0 drivers/net/bonding/bond_main.c:1688
 __netif_receive_skb_core+0xba7/0x2400 net/core/dev.c:5598
 __netif_receive_skb_one_core net/core/dev.c:5702 [inline]
 __netif_receive_skb+0x5a/0x280 net/core/dev.c:5817
 netif_receive_skb_internal net/core/dev.c:5903 [inline]
 netif_receive_skb+0x4a/0x320 net/core/dev.c:5962
 br_netif_receive_skb net/bridge/br_input.c:30 [inline]
 NF_HOOK include/linux/netfilter.h:314 [inline]
 br_pass_frame_up+0x239/0x310 net/bridge/br_input.c:70
 br_handle_frame_finish+0xd28/0xe70
 br_nf_hook_thresh+0x1e5/0x220
 br_nf_pre_routing_finish_ipv6+0x575/0x5a0
 NF_HOOK include/linux/netfilter.h:314 [inline]
 br_nf_pre_routing_ipv6+0x1f6/0x2a0 net/bridge/br_netfilter_ipv6.c:184
 br_nf_pre_routing+0x517/0xbc0 net/bridge/br_netfilter_hooks.c:536
 nf_hook_entry_hookfn include/linux/netfilter.h:154 [inline]
 nf_hook_bridge_pre net/bridge/br_input.c:277 [inline]
 br_handle_frame+0x4dd/0x9a0 net/bridge/br_input.c:424
 __netif_receive_skb_core+0xba7/0x2400 net/core/dev.c:5598
 __netif_receive_skb_one_core net/core/dev.c:5702 [inline]
 __netif_receive_skb+0x5a/0x280 net/core/dev.c:5817
 process_backlog+0x22e/0x440 net/core/dev.c:6149
 __napi_poll+0x63/0x3c0 net/core/dev.c:6902
 napi_poll net/core/dev.c:6971 [inline]
 net_rx_action+0x3a1/0x7f0 net/core/dev.c:7093
 handle_softirqs+0xbf/0x280 kernel/softirq.c:561
 run_ksoftirqd+0x1c/0x30 kernel/softirq.c:950
 smpboot_thread_fn+0x31c/0x4c0 kernel/smpboot.c:164
 kthread+0x1d1/0x210 kernel/kthread.c:389
 ret_from_fork+0x4b/0x60 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244

write to 0xffff88813a85f028 of 8 bytes by interrupt on cpu 1:
 bond_rcv_validate+0x255/0x7c0 drivers/net/bonding/bond_main.c:3502
 bond_handle_frame+0xdd/0x5c0 drivers/net/bonding/bond_main.c:1688
 __netif_receive_skb_core+0xba7/0x2400 net/core/dev.c:5598
 __netif_receive_skb_one_core net/core/dev.c:5702 [inline]
 __netif_receive_skb+0x5a/0x280 net/core/dev.c:5817
 netif_receive_skb_internal net/core/dev.c:5903 [inline]
 netif_receive_skb+0x4a/0x320 net/core/dev.c:5962
 br_netif_receive_skb net/bridge/br_input.c:30 [inline]
 NF_HOOK include/linux/netfilter.h:314 [inline]
 br_pass_frame_up+0x239/0x310 net/bridge/br_input.c:70
 br_handle_frame_finish+0xd28/0xe70
 br_nf_hook_thresh+0x1e5/0x220
 br_nf_pre_routing_finish_ipv6+0x575/0x5a0
 NF_HOOK include/linux/netfilter.h:314 [inline]
 br_nf_pre_routing_ipv6+0x1f6/0x2a0 net/bridge/br_netfilter_ipv6.c:184
 br_nf_pre_routing+0x517/0xbc0 net/bridge/br_netfilter_hooks.c:536
 nf_hook_entry_hookfn include/linux/netfilter.h:154 [inline]
 nf_hook_bridge_pre net/bridge/br_input.c:277 [inline]
 br_handle_frame+0x4dd/0x9a0 net/bridge/br_input.c:424
 __netif_receive_skb_core+0xba7/0x2400 net/core/dev.c:5598
 __netif_receive_skb_one_core net/core/dev.c:5702 [inline]
 __netif_receive_skb+0x5a/0x280 net/core/dev.c:5817
 process_backlog+0x22e/0x440 net/core/dev.c:6149
 __napi_poll+0x63/0x3c0 net/core/dev.c:6902
 napi_poll net/core/dev.c:6971 [inline]
 net_rx_action+0x3a1/0x7f0 net/core/dev.c:7093
 handle_softirqs+0xbf/0x280 kernel/softirq.c:561
 do_softirq+0x5e/0x90 kernel/softirq.c:462
 __local_bh_enable_ip+0x6e/0x70 kernel/softirq.c:389
 local_bh_enable include/linux/bottom_half.h:33 [inline]
 rcu_read_unlock_bh include/linux/rcupdate.h:919 [inline]
 mod_peer_timer drivers/net/wireguard/timers.c:38 [inline]
 wg_timers_any_authenticated_packet_traversal+0xe5/0x110 drivers/net/wireguard/timers.c:215
 wg_packet_send_handshake_initiation drivers/net/wireguard/send.c:36 [inline]
 wg_packet_handshake_send_worker+0xd7/0x150 drivers/net/wireguard/send.c:51
 process_one_work kernel/workqueue.c:3236 [inline]
 process_scheduled_works+0x483/0x9a0 kernel/workqueue.c:3317
 worker_thread+0x51d/0x6f0 kernel/workqueue.c:3398
 kthread+0x1d1/0x210 kernel/kthread.c:389
 ret_from_fork+0x4b/0x60 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244

value changed: 0x00000000ffffe889 -> 0x00000000ffffe88a

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 UID: 0 PID: 12094 Comm: kworker/u8:10 Not tainted 6.13.0-syzkaller-00918-g95ec54a420b8 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024
Workqueue: wg-kex-wg2 wg_packet_handshake_send_worker
==================================================================
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:1b, vlan:0)

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/01/21 17:11 upstream 95ec54a420b8 da72ac06 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in bond_rcv_validate / bond_rcv_validate
* Struck through repros no longer work on HEAD.