bridge0: received packet on veth1_to_bridge with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0) ================================================================== BUG: KCSAN: data-race in wq_worker_tick / wq_worker_tick read-write to 0xffff8881000c5cd8 of 8 bytes by interrupt on cpu 0: wq_worker_tick+0x64/0x240 kernel/workqueue.c:1508 sched_tick+0xbc/0x1f0 kernel/sched/core.c:5804 update_process_times+0x15e/0x190 kernel/time/timer.c:2480 tick_sched_handle kernel/time/tick-sched.c:296 [inline] tick_nohz_handler+0x227/0x380 kernel/time/tick-sched.c:317 __run_hrtimer kernel/time/hrtimer.c:2032 [inline] __hrtimer_run_queues+0x1f8/0x510 kernel/time/hrtimer.c:2096 hrtimer_interrupt+0x257/0x810 kernel/time/hrtimer.c:2215 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1051 [inline] __sysvec_apic_timer_interrupt+0x5f/0x1c0 arch/x86/kernel/apic/apic.c:1068 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1062 [inline] sysvec_apic_timer_interrupt+0x32/0x80 arch/x86/kernel/apic/apic.c:1062 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:674 find_match+0x51/0x780 net/ipv6/route.c:-1 __find_rr_leaf+0x160/0x4f0 net/ipv6/route.c:872 find_rr_leaf net/ipv6/route.c:893 [inline] rt6_select net/ipv6/route.c:937 [inline] fib6_table_lookup+0x1a5/0x5b0 net/ipv6/route.c:2255 ip6_pol_route+0xbb/0xef0 net/ipv6/route.c:2292 ip6_pol_route_input+0x42/0x60 net/ipv6/route.c:2351 pol_lookup_func include/net/ip6_fib.h:669 [inline] fib6_rule_lookup+0x35b/0x4c0 net/ipv6/fib6_rules.c:123 ip6_route_input_lookup net/ipv6/route.c:2363 [inline] ip6_route_input+0x4d0/0x5f0 net/ipv6/route.c:2666 ip6_rcv_finish_core net/ipv6/ip6_input.c:106 [inline] ip6_rcv_finish+0x1be/0x330 net/ipv6/ip6_input.c:117 NF_HOOK include/linux/netfilter.h:318 [inline] ipv6_rcv+0x72/0x170 net/ipv6/ip6_input.c:351 __netif_receive_skb_one_core net/core/dev.c:6206 [inline] __netif_receive_skb net/core/dev.c:6319 [inline] process_backlog+0x2a2/0x680 net/core/dev.c:6670 __napi_poll+0x61/0x300 net/core/dev.c:7729 napi_poll net/core/dev.c:7792 [inline] net_rx_action+0x456/0x930 net/core/dev.c:7949 handle_softirqs+0xb9/0x280 kernel/softirq.c:622 do_softirq+0x45/0x60 kernel/softirq.c:523 __local_bh_enable_ip+0x70/0x80 kernel/softirq.c:450 __raw_spin_unlock_bh include/linux/spinlock_api_smp.h:196 [inline] _raw_spin_unlock_bh+0x18/0x20 kernel/locking/spinlock.c:214 spin_unlock_bh include/linux/spinlock.h:396 [inline] nsim_dev_trap_report drivers/net/netdevsim/dev.c:891 [inline] nsim_dev_trap_report_work+0x521/0x630 drivers/net/netdevsim/dev.c:922 process_one_work kernel/workqueue.c:3322 [inline] process_scheduled_works+0x4d4/0x9a0 kernel/workqueue.c:3405 worker_thread+0x569/0x750 kernel/workqueue.c:3486 kthread+0x221/0x270 kernel/kthread.c:436 ret_from_fork+0x146/0x330 arch/x86/kernel/process.c:158 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 read-write to 0xffff8881000c5cd8 of 8 bytes by interrupt on cpu 1: wq_worker_tick+0x64/0x240 kernel/workqueue.c:1508 sched_tick+0xbc/0x1f0 kernel/sched/core.c:5804 update_process_times+0x15e/0x190 kernel/time/timer.c:2480 tick_sched_handle kernel/time/tick-sched.c:296 [inline] tick_nohz_handler+0x227/0x380 kernel/time/tick-sched.c:317 __run_hrtimer kernel/time/hrtimer.c:2032 [inline] __hrtimer_run_queues+0x1f8/0x510 kernel/time/hrtimer.c:2096 hrtimer_interrupt+0x257/0x810 kernel/time/hrtimer.c:2215 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1051 [inline] __sysvec_apic_timer_interrupt+0x5f/0x1c0 arch/x86/kernel/apic/apic.c:1068 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1062 [inline] sysvec_apic_timer_interrupt+0x32/0x80 arch/x86/kernel/apic/apic.c:1062 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:674 is_atomic kernel/kcsan/core.c:260 [inline] should_watch kernel/kcsan/core.c:277 [inline] check_access kernel/kcsan/core.c:752 [inline] __tsan_read4+0xfb/0x190 kernel/kcsan/core.c:1024 __is_skb_forwardable include/linux/netdevice.h:4417 [inline] is_skb_forwardable+0x77/0xf0 net/core/dev.c:2434 br_dev_queue_push_xmit+0x36/0x2a0 net/bridge/br_forward.c:36 br_nf_dev_queue_xmit+0x40a/0xbd0 net/bridge/br_netfilter_hooks.c:-1 NF_HOOK include/linux/netfilter.h:318 [inline] br_nf_post_routing+0x8cc/0x9a0 net/bridge/br_netfilter_hooks.c:964 nf_hook_entry_hookfn include/linux/netfilter.h:158 [inline] nf_hook_slow+0x78/0x180 net/netfilter/core.c:619 nf_hook include/linux/netfilter.h:273 [inline] NF_HOOK include/linux/netfilter.h:316 [inline] br_forward_finish+0x148/0x190 net/bridge/br_forward.c:66 br_nf_hook_thresh net/bridge/br_netfilter_hooks.c:-1 [inline] br_nf_forward_finish+0x6ff/0x780 net/bridge/br_netfilter_hooks.c:667 NF_HOOK include/linux/netfilter.h:318 [inline] br_nf_forward_ip+0x5fa/0x610 net/bridge/br_netfilter_hooks.c:721 br_nf_forward+0x5ba/0xee0 net/bridge/br_netfilter_hooks.c:778 nf_hook_entry_hookfn include/linux/netfilter.h:158 [inline] nf_hook_slow+0x78/0x180 net/netfilter/core.c:619 nf_hook include/linux/netfilter.h:273 [inline] NF_HOOK include/linux/netfilter.h:316 [inline] __br_forward+0x282/0x360 net/bridge/br_forward.c:115 br_flood+0x622/0x760 net/bridge/br_forward.c:-1 br_handle_frame_finish+0xaa3/0xdf0 net/bridge/br_input.c:229 br_nf_hook_thresh+0x233/0x270 net/bridge/br_netfilter_hooks.c:-1 br_nf_pre_routing_finish_ipv6+0x503/0x530 net/bridge/br_netfilter_ipv6.c:-1 NF_HOOK include/linux/netfilter.h:318 [inline] br_nf_pre_routing_ipv6+0x1fa/0x2e0 net/bridge/br_netfilter_ipv6.c:183 br_nf_pre_routing+0x577/0xc00 net/bridge/br_netfilter_hooks.c:513 nf_hook_entry_hookfn include/linux/netfilter.h:158 [inline] nf_hook_bridge_pre net/bridge/br_input.c:291 [inline] br_handle_frame+0x83b/0xa40 net/bridge/br_input.c:442 __netif_receive_skb_core+0x5b1/0x1950 net/core/dev.c:6093 __netif_receive_skb_one_core net/core/dev.c:6204 [inline] __netif_receive_skb net/core/dev.c:6319 [inline] process_backlog+0x25d/0x680 net/core/dev.c:6670 __napi_poll+0x61/0x300 net/core/dev.c:7729 napi_poll net/core/dev.c:7792 [inline] net_rx_action+0x456/0x930 net/core/dev.c:7949 handle_softirqs+0xb9/0x280 kernel/softirq.c:622 do_softirq+0x45/0x60 kernel/softirq.c:523 __local_bh_enable_ip+0x70/0x80 kernel/softirq.c:450 __raw_spin_unlock_bh include/linux/spinlock_api_smp.h:196 [inline] _raw_spin_unlock_bh+0x18/0x20 kernel/locking/spinlock.c:214 spin_unlock_bh include/linux/spinlock.h:396 [inline] nsim_dev_trap_report drivers/net/netdevsim/dev.c:891 [inline] nsim_dev_trap_report_work+0x521/0x630 drivers/net/netdevsim/dev.c:922 process_one_work kernel/workqueue.c:3322 [inline] process_scheduled_works+0x4d4/0x9a0 kernel/workqueue.c:3405 worker_thread+0x569/0x750 kernel/workqueue.c:3486 kthread+0x221/0x270 kernel/kthread.c:436 ret_from_fork+0x146/0x330 arch/x86/kernel/process.c:158 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 value changed: 0x0000000003e29160 -> 0x0000000003e2b870 Reported by Kernel Concurrency Sanitizer on: CPU: 1 UID: 0 PID: 40 Comm: kworker/u8:2 Not tainted syzkaller #0 PREEMPT(lazy) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/25/2026 Workqueue: events_unbound nsim_dev_trap_report_work ================================================================== bridge0: received packet on veth1_to_bridge with own address as source address (addr:9e:85:b1:0d:5f:e8, vlan:0) bridge0: received packet on bridge_slave_1 with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0) bridge0: received packet on bridge_slave_1 with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0) bridge0: received packet on veth1_to_bridge with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0) bridge0: received packet on veth1_to_bridge with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0) bridge0: received packet on veth1_to_bridge with own address as source address (addr:9e:85:b1:0d:5f:e8, vlan:0) bridge0: received packet on veth1_to_bridge with own address as source address (addr:9e:85:b1:0d:5f:e8, vlan:0) bridge0: received packet on veth1_to_bridge with own address as source address (addr:9e:85:b1:0d:5f:e8, vlan:0) bridge0: received packet on bridge_slave_1 with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0) bridge0: received packet on bridge_slave_1 with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0)