================================================================== BUG: KCSAN: data-race in pollwake / pollwake write to 0xffffc90000947c30 of 4 bytes by interrupt on cpu 0: __pollwake fs/select.c:198 [inline] pollwake+0xbe/0x110 fs/select.c:218 __wake_up_common kernel/sched/wait.c:89 [inline] __wake_up_common_lock kernel/sched/wait.c:106 [inline] __wake_up_sync_key+0x50/0x80 kernel/sched/wait.c:173 sock_def_readable+0x70/0x1b0 net/core/sock.c:3338 tcp_data_ready+0x1aa/0x280 net/ipv4/tcp_input.c:5128 tcp_rcv_established+0xd06/0xef0 net/ipv4/tcp_input.c:6122 tcp_v4_do_rcv+0x2d4/0x630 net/ipv4/tcp_ipv4.c:1906 tcp_v4_rcv+0x1aae/0x1d40 net/ipv4/tcp_ipv4.c:2329 ip_protocol_deliver_rcu+0x356/0x6d0 net/ipv4/ip_input.c:205 ip_local_deliver_finish+0x13c/0x1a0 net/ipv4/ip_input.c:233 NF_HOOK include/linux/netfilter.h:314 [inline] ip_local_deliver+0xec/0x1c0 net/ipv4/ip_input.c:254 dst_input include/net/dst.h:461 [inline] ip_sublist_rcv_finish net/ipv4/ip_input.c:580 [inline] ip_list_rcv_finish net/ipv4/ip_input.c:631 [inline] ip_sublist_rcv+0x4f0/0x5c0 net/ipv4/ip_input.c:639 ip_list_rcv+0x25e/0x290 net/ipv4/ip_input.c:674 __netif_receive_skb_list_ptype net/core/dev.c:5572 [inline] __netif_receive_skb_list_core+0x356/0x460 net/core/dev.c:5620 __netif_receive_skb_list net/core/dev.c:5672 [inline] netif_receive_skb_list_internal+0x4e6/0x660 net/core/dev.c:5763 gro_normal_list include/net/gro.h:439 [inline] napi_complete_done+0x1cb/0x450 net/core/dev.c:6103 virtqueue_napi_complete drivers/net/virtio_net.c:440 [inline] virtnet_poll+0x7c0/0xae0 drivers/net/virtio_net.c:2158 __napi_poll+0x60/0x3b0 net/core/dev.c:6533 napi_poll net/core/dev.c:6602 [inline] net_rx_action+0x32b/0x750 net/core/dev.c:6735 __do_softirq+0xc4/0x279 kernel/softirq.c:553 invoke_softirq kernel/softirq.c:427 [inline] __irq_exit_rcu kernel/softirq.c:632 [inline] irq_exit_rcu+0x3b/0x90 kernel/softirq.c:644 common_interrupt+0x7f/0x90 arch/x86/kernel/irq.c:247 asm_common_interrupt+0x26/0x40 arch/x86/include/asm/idtentry.h:636 is_atomic kernel/kcsan/core.c:264 [inline] should_watch kernel/kcsan/core.c:277 [inline] check_access kernel/kcsan/core.c:752 [inline] __tsan_read2+0xfd/0x180 kernel/kcsan/core.c:1023 avc_search_node security/selinux/avc.c:533 [inline] avc_lookup security/selinux/avc.c:560 [inline] avc_has_perm_noaudit+0xbe/0x210 security/selinux/avc.c:1154 cred_has_capability security/selinux/hooks.c:1643 [inline] selinux_vm_enough_memory+0x93/0xd0 security/selinux/hooks.c:2216 security_vm_enough_memory_mm+0x3d/0x70 security/security.c:1035 mprotect_fixup+0x299/0x5c0 mm/mprotect.c:626 do_mprotect_pkey+0x641/0x920 mm/mprotect.c:809 __do_sys_mprotect mm/mprotect.c:830 [inline] __se_sys_mprotect mm/mprotect.c:827 [inline] __x64_sys_mprotect+0x48/0x50 mm/mprotect.c:827 do_syscall_x64 arch/x86/entry/common.c:51 [inline] do_syscall_64+0x44/0x110 arch/x86/entry/common.c:82 entry_SYSCALL_64_after_hwframe+0x63/0x6b write to 0xffffc90000947c30 of 4 bytes by task 3639 on cpu 1: __pollwake fs/select.c:198 [inline] pollwake+0xbe/0x110 fs/select.c:218 __wake_up_common kernel/sched/wait.c:89 [inline] __wake_up_common_lock kernel/sched/wait.c:106 [inline] __wake_up_sync_key+0x50/0x80 kernel/sched/wait.c:173 pipe_write+0x962/0xd20 fs/pipe.c:605 call_write_iter include/linux/fs.h:2020 [inline] new_sync_write fs/read_write.c:491 [inline] vfs_write+0x48a/0x790 fs/read_write.c:584 ksys_write+0xeb/0x1a0 fs/read_write.c:637 __do_sys_write fs/read_write.c:649 [inline] __se_sys_write fs/read_write.c:646 [inline] __x64_sys_write+0x42/0x50 fs/read_write.c:646 do_syscall_x64 arch/x86/entry/common.c:51 [inline] do_syscall_64+0x44/0x110 arch/x86/entry/common.c:82 entry_SYSCALL_64_after_hwframe+0x63/0x6b value changed: 0x00000000 -> 0x00000001 Reported by Kernel Concurrency Sanitizer on: CPU: 1 PID: 3639 Comm: syz-fuzzer Not tainted 6.7.0-rc2-syzkaller-00206-gb46ae77f6787 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 11/10/2023 ==================================================================