In the Linux kernel, the following vulnerability has been resolved:
vxlan: Annotate FDB data races
The 'used' and 'updated' fields in the FDB entry structure can be accessed concurrently by multiple threads, leading to reports such as [1]. Can be reproduced using [2].
Suppress these reports by annotating these accesses using READONCE() / WRITEONCE().
[1] BUG: KCSAN: data-race in vxlanxmit / vxlanxmit
write to 0xffff942604d263a8 of 8 bytes by task 286 on cpu 0: vxlanxmit+0xb29/0x2380 devhardstartxmit+0x84/0x2f0 _devqueuexmit+0x45a/0x1650 packetxmit+0x100/0x150 packetsendmsg+0x2114/0x2ac0 _syssendto+0x318/0x330 _x64syssendto+0x76/0x90 x64syscall+0x14e8/0x1c00 dosyscall64+0x9e/0x1a0 entrySYSCALL64afterhwframe+0x77/0x7f
read to 0xffff942604d263a8 of 8 bytes by task 287 on cpu 2: vxlanxmit+0xadf/0x2380 devhardstartxmit+0x84/0x2f0 _devqueuexmit+0x45a/0x1650 packetxmit+0x100/0x150 packetsendmsg+0x2114/0x2ac0 _syssendto+0x318/0x330 _x64syssendto+0x76/0x90 x64syscall+0x14e8/0x1c00 dosyscall64+0x9e/0x1a0 entrySYSCALL64afterhwframe+0x77/0x7f
value changed: 0x00000000fffbac6e -> 0x00000000fffbac6f
Reported by Kernel Concurrency Sanitizer on: CPU: 2 UID: 0 PID: 287 Comm: mausezahn Not tainted 6.13.0-rc7-01544-gb4b270f11a02 #5 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.3-3.fc41 04/01/2014
[2] #!/bin/bash
set +H echo whitelist > /sys/kernel/debug/kcsan echo !vxlan_xmit > /sys/kernel/debug/kcsan
ip link add name vx0 up type vxlan id 10010 dstport 4789 local 192.0.2.1 bridge fdb add 00:11:22:33:44:55 dev vx0 self static dst 198.51.100.1 taskset -c 0 mausezahn vx0 -a own -b 00:11:22:33:44:55 -c 0 -q & taskset -c 2 mausezahn vx0 -a own -b 00:11:22:33:44:55 -c 0 -q &