netdevsim netdevsim2 netdevsim1 (unregistering): unset [1, 0] type 2 family 0 port 6081 - 0 ================================================================== BUG: KCSAN: data-race in data_alloc / data_push_tail write to 0xffffffff883d0520 of 8 bytes by task 7598 on cpu 1: data_alloc+0x216/0x2c0 kernel/printk/printk_ringbuffer.c:1082 prb_reserve+0x85e/0xb60 kernel/printk/printk_ringbuffer.c:1669 vprintk_store+0x53f/0x810 kernel/printk/printk.c:2269 vprintk_emit+0x10c/0x5e0 kernel/printk/printk.c:2329 vprintk_default+0x26/0x30 kernel/printk/printk.c:2363 vprintk+0x75/0x80 kernel/printk/printk_safe.c:45 _printk+0x7a/0xa0 kernel/printk/printk.c:2373 blk_add_partition block/partitions/core.c:541 [inline] blk_add_partitions block/partitions/core.c:626 [inline] bdev_disk_changed+0x888/0xbe0 block/partitions/core.c:686 loop_reread_partitions drivers/block/loop.c:514 [inline] loop_set_status+0x4ab/0x550 drivers/block/loop.c:1316 lo_ioctl+0x892/0x1330 blkdev_ioctl+0x37f/0x470 block/ioctl.c:642 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:904 [inline] __se_sys_ioctl+0xd3/0x150 fs/ioctl.c:890 __x64_sys_ioctl+0x43/0x50 fs/ioctl.c:890 x64_sys_call+0x155d/0x2d30 arch/x86/include/generated/asm/syscalls_64.h:17 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcd/0x1d0 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f read to 0xffffffff883d0520 of 8 bytes by task 7570 on cpu 0: data_make_reusable kernel/printk/printk_ringbuffer.c:594 [inline] data_push_tail+0x102/0x430 kernel/printk/printk_ringbuffer.c:679 data_alloc+0xbe/0x2c0 kernel/printk/printk_ringbuffer.c:1054 prb_reserve+0x85e/0xb60 kernel/printk/printk_ringbuffer.c:1669 vprintk_store+0x53f/0x810 kernel/printk/printk.c:2269 vprintk_emit+0x10c/0x5e0 kernel/printk/printk.c:2329 dev_vprintk_emit+0x1df/0x210 drivers/base/core.c:4950 dev_printk_emit+0x82/0xb0 drivers/base/core.c:4961 __netdev_printk+0x352/0x3e0 net/core/dev.c:11505 netdev_info+0x99/0xc0 net/core/dev.c:11560 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+0x7b3/0xc80 net/ipv4/udp_tunnel_nic.c:904 notifier_call_chain kernel/notifier.c:93 [inline] raw_notifier_call_chain+0x6f/0x1d0 kernel/notifier.c:461 call_netdevice_notifiers_info+0xae/0x100 net/core/dev.c:1950 call_netdevice_notifiers_extack net/core/dev.c:1988 [inline] call_netdevice_notifiers net/core/dev.c:2002 [inline] unregister_netdevice_many_notify+0x83c/0xf20 net/core/dev.c:11105 unregister_netdevice_many net/core/dev.c:11163 [inline] unregister_netdevice_queue+0x1f4/0x220 net/core/dev.c:11042 unregister_netdevice include/linux/netdevice.h:3115 [inline] nsim_destroy+0x7d/0x130 drivers/net/netdevsim/netdev.c:456 __nsim_dev_port_del+0xcd/0x100 drivers/net/netdevsim/dev.c:1425 nsim_dev_port_del_all drivers/net/netdevsim/dev.c:1437 [inline] nsim_dev_reload_destroy+0x1a6/0x2d0 drivers/net/netdevsim/dev.c:1658 nsim_drv_remove+0x3e/0x100 drivers/net/netdevsim/dev.c:1673 nsim_bus_remove+0x15/0x20 drivers/net/netdevsim/bus.c:398 device_remove drivers/base/dd.c:566 [inline] __device_release_driver drivers/base/dd.c:1270 [inline] device_release_driver_internal+0x2e5/0x4f0 drivers/base/dd.c:1293 device_release_driver+0x19/0x20 drivers/base/dd.c:1316 bus_remove_device+0x26f/0x290 drivers/base/bus.c:574 device_del+0x370/0x7b0 drivers/base/core.c:3909 device_unregister+0x15/0x40 drivers/base/core.c:3950 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:170 sysfs_kf_write+0xae/0xd0 fs/sysfs/file.c:136 kernfs_fop_write_iter+0x1ce/0x2c0 fs/kernfs/file.c:334 call_write_iter include/linux/fs.h:2110 [inline] new_sync_write fs/read_write.c:497 [inline] vfs_write+0x771/0x8e0 fs/read_write.c:590 ksys_write+0xeb/0x1b0 fs/read_write.c:643 __do_sys_write fs/read_write.c:655 [inline] __se_sys_write fs/read_write.c:652 [inline] __x64_sys_write+0x42/0x50 fs/read_write.c:652 x64_sys_call+0x27b7/0x2d30 arch/x86/include/generated/asm/syscalls_64.h:2 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcd/0x1d0 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f value changed: 0x00000001000035e4 -> 0x00000001000040f0 Reported by Kernel Concurrency Sanitizer on: CPU: 0 PID: 7570 Comm: syz-executor.2 Tainted: G W 6.9.0-rc6-syzkaller-00234-g7367539ad4b0 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024 ================================================================== netdevsim netdevsim2 netdevsim0 (unregistering): unset [1, 0] type 2 family 0 port 6081 - 0 netdevsim netdevsim2 netdevsim0: renamed from eth0 netdevsim netdevsim2 netdevsim1: renamed from eth1 netdevsim netdevsim2 netdevsim2: renamed from eth2 netdevsim netdevsim2 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: 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: 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: 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: 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 netdevsim2 netdevsim0: set [1, 0] type 2 family 0 port 6081 - 0 netdevsim netdevsim2 netdevsim1: set [1, 0] type 2 family 0 port 6081 - 0 netdevsim netdevsim2 netdevsim2: set [1, 0] type 2 family 0 port 6081 - 0 netdevsim netdevsim2 netdevsim3: set [1, 0] type 2 family 0 port 6081 - 0