================================================================== BUG: KCSAN: data-race in data_alloc / prb_reserve write to 0xffffffff8667a760 of 8 bytes by task 22528 on cpu 1: data_alloc+0x291/0x2c0 kernel/printk/printk_ringbuffer.c:1096 prb_reserve+0x85e/0xb60 kernel/printk/printk_ringbuffer.c:1669 vprintk_store+0x558/0x870 kernel/printk/printk.c:2326 vprintk_emit+0x15e/0x680 kernel/printk/printk.c:2408 vprintk_default+0x26/0x30 kernel/printk/printk.c:2447 vprintk+0x75/0x80 kernel/printk/printk_safe.c:86 _printk+0x7a/0xa0 kernel/printk/printk.c:2457 hashlimit_mt_check_common+0x459/0x6a0 net/netfilter/xt_hashlimit.c:850 hashlimit_mt_check+0x64/0x80 net/netfilter/xt_hashlimit.c:955 xt_check_match+0x259/0x4b0 net/netfilter/x_tables.c:523 check_match net/ipv6/netfilter/ip6_tables.c:488 [inline] find_check_match net/ipv6/netfilter/ip6_tables.c:505 [inline] find_check_entry net/ipv6/netfilter/ip6_tables.c:556 [inline] translate_table+0xb44/0x1040 net/ipv6/netfilter/ip6_tables.c:733 do_replace net/ipv6/netfilter/ip6_tables.c:1154 [inline] do_ip6t_set_ctl+0x7cc/0x8c0 net/ipv6/netfilter/ip6_tables.c:1644 nf_setsockopt+0x195/0x1b0 net/netfilter/nf_sockopt.c:101 ipv6_setsockopt+0x10f/0x130 net/ipv6/ipv6_sockglue.c:998 rawv6_setsockopt+0x21e/0x410 net/ipv6/raw.c:1054 sock_common_setsockopt+0x64/0x80 net/core/sock.c:3814 do_sock_setsockopt net/socket.c:2313 [inline] __sys_setsockopt+0x187/0x200 net/socket.c:2338 __do_sys_setsockopt net/socket.c:2344 [inline] __se_sys_setsockopt net/socket.c:2341 [inline] __x64_sys_setsockopt+0x66/0x80 net/socket.c:2341 x64_sys_call+0x282e/0x2dc0 arch/x86/include/generated/asm/syscalls_64.h:55 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xc9/0x1c0 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f read to 0xffffffff8667a760 of 8 bytes by task 22451 on cpu 0: desc_read kernel/printk/printk_ringbuffer.c:482 [inline] desc_push_tail kernel/printk/printk_ringbuffer.c:778 [inline] desc_reserve kernel/printk/printk_ringbuffer.c:924 [inline] prb_reserve+0x235/0xb60 kernel/printk/printk_ringbuffer.c:1619 vprintk_store+0x558/0x870 kernel/printk/printk.c:2326 vprintk_emit+0x15e/0x680 kernel/printk/printk.c:2408 dev_vprintk_emit+0x1df/0x210 drivers/base/core.c:4935 dev_printk_emit+0x82/0xb0 drivers/base/core.c:4946 __netdev_printk+0x352/0x3e0 net/core/dev.c:11938 netdev_info+0x99/0xc0 net/core/dev.c:11993 nsim_udp_tunnel_unset_port+0x1bc/0x1e0 drivers/net/netdevsim/udp_tunnels.c:64 udp_tunnel_nic_device_sync_by_port net/ipv4/udp_tunnel_nic.c:246 [inline] __udp_tunnel_nic_device_sync+0x57b/0x9e0 net/ipv4/udp_tunnel_nic.c:289 udp_tunnel_nic_flush+0x22c/0x320 net/ipv4/udp_tunnel_nic.c:670 udp_tunnel_nic_unregister net/ipv4/udp_tunnel_nic.c:864 [inline] udp_tunnel_nic_netdevice_event+0x7b9/0xc80 net/ipv4/udp_tunnel_nic.c:904 notifier_call_chain kernel/notifier.c:85 [inline] raw_notifier_call_chain+0x6f/0x1d0 kernel/notifier.c:453 call_netdevice_notifiers_info+0xae/0x100 net/core/dev.c:1996 call_netdevice_notifiers_extack net/core/dev.c:2034 [inline] call_netdevice_notifiers net/core/dev.c:2048 [inline] unregister_netdevice_many_notify+0x8b7/0x11b0 net/core/dev.c:11526 unregister_netdevice_many net/core/dev.c:11590 [inline] unregister_netdevice_queue+0x1f4/0x220 net/core/dev.c:11462 unregister_netdevice include/linux/netdevice.h:3192 [inline] nsim_destroy+0xa4/0x2f0 drivers/net/netdevsim/netdev.c:821 __nsim_dev_port_del+0xcd/0x100 drivers/net/netdevsim/dev.c:1428 nsim_dev_port_del_all drivers/net/netdevsim/dev.c:1440 [inline] nsim_dev_reload_destroy+0x1a6/0x2d0 drivers/net/netdevsim/dev.c:1661 nsim_drv_remove+0x3e/0x100 drivers/net/netdevsim/dev.c:1676 nsim_bus_remove+0x15/0x20 drivers/net/netdevsim/bus.c:398 device_remove drivers/base/dd.c:567 [inline] __device_release_driver drivers/base/dd.c:1273 [inline] device_release_driver_internal+0x2e5/0x4f0 drivers/base/dd.c:1296 device_release_driver+0x19/0x20 drivers/base/dd.c:1319 bus_remove_device+0x26f/0x290 drivers/base/bus.c:576 device_del+0x370/0x780 drivers/base/core.c:3854 device_unregister+0x15/0x40 drivers/base/core.c:3895 nsim_bus_dev_del drivers/net/netdevsim/bus.c:462 [inline] del_device_store+0x1cb/0x230 drivers/net/netdevsim/bus.c:226 bus_attr_store+0x54/0x70 drivers/base/bus.c:172 sysfs_kf_write+0xae/0xd0 fs/sysfs/file.c:139 kernfs_fop_write_iter+0x1c8/0x2c0 fs/kernfs/file.c:334 new_sync_write fs/read_write.c:586 [inline] vfs_write+0x77f/0x920 fs/read_write.c:679 ksys_write+0xe8/0x1b0 fs/read_write.c:731 __do_sys_write fs/read_write.c:742 [inline] __se_sys_write fs/read_write.c:739 [inline] __x64_sys_write+0x42/0x50 fs/read_write.c:739 x64_sys_call+0x287e/0x2dc0 arch/x86/include/generated/asm/syscalls_64.h:2 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xc9/0x1c0 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f value changed: 0x0000000000009768 -> 0x00000000000b0538 Reported by Kernel Concurrency Sanitizer on: CPU: 0 UID: 0 PID: 22451 Comm: syz-executor Not tainted 6.13.0-rc2-syzkaller-00031-gf92f4749861b #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024 ================================================================== netdevsim netdevsim8 netdevsim3 (unregistering): unset [1, 0] type 2 family 0 port 6081 - 0 netdevsim netdevsim8 netdevsim2 (unregistering): unset [1, 0] type 2 family 0 port 6081 - 0 netdevsim netdevsim8 netdevsim1 (unregistering): unset [1, 0] type 2 family 0 port 6081 - 0 netdevsim netdevsim8 netdevsim0 (unregistering): unset [1, 0] type 2 family 0 port 6081 - 0 netdevsim netdevsim8 netdevsim0: renamed from eth0 netdevsim netdevsim8 netdevsim1: renamed from eth1 netdevsim netdevsim8 netdevsim2: renamed from eth2 netdevsim netdevsim8 netdevsim3: renamed from eth3 8021q: adding VLAN 0 to HW filter on device bond0 8021q: adding VLAN 0 to HW filter on device team0 8021q: adding VLAN 0 to HW filter on device batadv0 veth0_vlan: entered promiscuous mode veth1_vlan: entered promiscuous mode veth0_macvtap: entered promiscuous mode veth1_macvtap: entered promiscuous mode batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_0 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_0 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_0 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_0 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_0 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_0 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3e) already exists on: batadv_slave_0 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: batadv0: Interface activated: batadv_slave_0 batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3f) already exists on: batadv_slave_1 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3f) already exists on: batadv_slave_1 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3f) already exists on: batadv_slave_1 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3f) already exists on: batadv_slave_1 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3f) already exists on: batadv_slave_1 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3f) already exists on: batadv_slave_1 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: The newly added mac address (aa:aa:aa:aa:aa:3f) already exists on: batadv_slave_1 batman_adv: It is strongly recommended to keep mac addresses unique to avoid problems! batman_adv: batadv0: Interface activated: batadv_slave_1 netdevsim netdevsim8 netdevsim0: set [1, 0] type 2 family 0 port 6081 - 0 netdevsim netdevsim8 netdevsim1: set [1, 0] type 2 family 0 port 6081 - 0 netdevsim netdevsim8 netdevsim2: set [1, 0] type 2 family 0 port 6081 - 0 netdevsim netdevsim8 netdevsim3: set [1, 0] type 2 family 0 port 6081 - 0