================================================================== BUG: KCSAN: data-race in virtqueue_disable_cb / vring_interrupt write to 0xffff88810333b35a of 1 bytes by interrupt on cpu 1: vring_interrupt+0x128/0x170 drivers/virtio/virtio_ring.c:2466 __handle_irq_event_percpu+0x91/0x490 kernel/irq/handle.c:158 handle_irq_event_percpu kernel/irq/handle.c:193 [inline] handle_irq_event+0x64/0xf0 kernel/irq/handle.c:210 handle_edge_irq+0x17f/0x5a0 kernel/irq/chip.c:819 generic_handle_irq_desc include/linux/irqdesc.h:158 [inline] handle_irq arch/x86/kernel/irq.c:231 [inline] __common_interrupt+0x64/0x100 arch/x86/kernel/irq.c:250 common_interrupt+0x9e/0xc0 arch/x86/kernel/irq.c:240 asm_common_interrupt+0x26/0x40 arch/x86/include/asm/idtentry.h:640 ext4_evict_inode+0xa5b/0xee0 evict+0x1aa/0x410 fs/inode.c:665 iput_final fs/inode.c:1748 [inline] iput+0x42c/0x5b0 fs/inode.c:1774 do_unlinkat+0x2b3/0x4f0 fs/namei.c:4323 __do_sys_unlink fs/namei.c:4364 [inline] __se_sys_unlink fs/namei.c:4362 [inline] __x64_sys_unlink+0x30/0x40 fs/namei.c:4362 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x41/0xc0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x63/0xcd read to 0xffff88810333b35a of 1 bytes by interrupt on cpu 0: virtqueue_disable_cb+0x1b/0x170 drivers/virtio/virtio_ring.c:2315 start_xmit+0xd0/0xbe0 drivers/net/virtio_net.c:1837 __netdev_start_xmit include/linux/netdevice.h:4863 [inline] netdev_start_xmit include/linux/netdevice.h:4877 [inline] xmit_one net/core/dev.c:3575 [inline] dev_hard_start_xmit+0x127/0x400 net/core/dev.c:3591 sch_direct_xmit+0x1b0/0x570 net/sched/sch_generic.c:342 __dev_xmit_skb net/core/dev.c:3802 [inline] __dev_queue_xmit+0xf61/0x1eb0 net/core/dev.c:4207 dev_queue_xmit include/linux/netdevice.h:3033 [inline] neigh_hh_output include/net/neighbour.h:530 [inline] neigh_output include/net/neighbour.h:544 [inline] ip_finish_output2+0x6fe/0x840 net/ipv4/ip_output.c:228 ip_finish_output+0xf4/0x240 net/ipv4/ip_output.c:316 NF_HOOK_COND include/linux/netfilter.h:291 [inline] ip_output+0xe5/0x1b0 net/ipv4/ip_output.c:430 dst_output include/net/dst.h:444 [inline] ip_local_out net/ipv4/ip_output.c:126 [inline] __ip_queue_xmit+0xa4d/0xa70 net/ipv4/ip_output.c:532 ip_queue_xmit+0x38/0x40 net/ipv4/ip_output.c:546 __tcp_transmit_skb+0x1165/0x16c0 net/ipv4/tcp_output.c:1399 __tcp_send_ack+0x1e0/0x2d0 net/ipv4/tcp_output.c:3983 tcp_send_ack+0x27/0x30 net/ipv4/tcp_output.c:3989 __tcp_ack_snd_check+0x2d5/0x500 net/ipv4/tcp_input.c:5536 tcp_ack_snd_check net/ipv4/tcp_input.c:5582 [inline] tcp_rcv_established+0x6f8/0xe50 net/ipv4/tcp_input.c:6020 tcp_v4_do_rcv+0x2ac/0x600 net/ipv4/tcp_ipv4.c:1721 tcp_v4_rcv+0x187a/0x1ad0 net/ipv4/tcp_ipv4.c:2142 ip_protocol_deliver_rcu+0x356/0x6f0 net/ipv4/ip_input.c:205 ip_local_deliver_finish+0x13d/0x1b0 net/ipv4/ip_input.c:233 NF_HOOK include/linux/netfilter.h:302 [inline] ip_local_deliver+0xec/0x1c0 net/ipv4/ip_input.c:254 dst_input include/net/dst.h:454 [inline] ip_sublist_rcv_finish net/ipv4/ip_input.c:580 [inline] ip_list_rcv_finish net/ipv4/ip_input.c:630 [inline] ip_sublist_rcv+0x4e1/0x5b0 net/ipv4/ip_input.c:638 ip_list_rcv+0x25e/0x290 net/ipv4/ip_input.c:673 __netif_receive_skb_list_ptype net/core/dev.c:5517 [inline] __netif_receive_skb_list_core+0x356/0x460 net/core/dev.c:5565 __netif_receive_skb_list net/core/dev.c:5617 [inline] netif_receive_skb_list_internal+0x4e6/0x660 net/core/dev.c:5708 gro_normal_list include/net/gro.h:433 [inline] napi_complete_done+0x1b8/0x3d0 net/core/dev.c:6048 virtqueue_napi_complete drivers/net/virtio_net.c:405 [inline] virtnet_poll+0x729/0x9a0 drivers/net/virtio_net.c:1685 __napi_poll+0x60/0x3b0 net/core/dev.c:6477 napi_poll net/core/dev.c:6544 [inline] net_rx_action+0x328/0x6c0 net/core/dev.c:6655 __do_softirq+0xe4/0x2b0 kernel/softirq.c:571 invoke_softirq kernel/softirq.c:445 [inline] __irq_exit_rcu+0x85/0x100 kernel/softirq.c:650 common_interrupt+0xa3/0xc0 arch/x86/kernel/irq.c:240 asm_common_interrupt+0x26/0x40 arch/x86/include/asm/idtentry.h:640 kcsan_setup_watchpoint+0x3fe/0x410 kernel/kcsan/core.c:696 crc32_body lib/crc32.c:106 [inline] crc32_le_generic lib/crc32.c:179 [inline] __crc32c_le_base+0xa3/0x520 lib/crc32.c:201 chksum_update+0x32/0x50 crypto/crc32c_generic.c:88 crypto_shash_update+0x136/0x1a0 crypto/shash.c:121 ext4_chksum fs/ext4/ext4.h:2463 [inline] ext4_dirblock_csum fs/ext4/namei.c:381 [inline] ext4_dirblock_csum_set fs/ext4/namei.c:429 [inline] ext4_handle_dirty_dirblock+0x26d/0x340 fs/ext4/namei.c:437 add_dirent_to_buf+0x35e/0x440 fs/ext4/namei.c:2196 ext4_add_entry+0x3d6/0x1e70 fs/ext4/namei.c:2424 ext4_add_nondir+0x50/0x190 fs/ext4/namei.c:2772 ext4_symlink+0x4c5/0x580 fs/ext4/namei.c:3411 vfs_symlink+0xc2/0x1a0 fs/namei.c:4398 do_symlinkat+0xe3/0x320 fs/namei.c:4424 __do_sys_symlinkat fs/namei.c:4440 [inline] __se_sys_symlinkat fs/namei.c:4437 [inline] __x64_sys_symlinkat+0x62/0x70 fs/namei.c:4437 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x41/0xc0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x63/0xcd value changed: 0x00 -> 0x01 Reported by Kernel Concurrency Sanitizer on: CPU: 0 PID: 22405 Comm: syz-executor.4 Tainted: G W 6.2.0-syzkaller-02019-g89f5349e0673-dirty #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/21/2023 ==================================================================