================================================================== BUG: KCSAN: data-race in ondemand_readahead / ondemand_readahead write to 0xffff88812ea0df78 of 8 bytes by task 11022 on cpu 0: ondemand_readahead+0x566/0x690 mm/readahead.c:606 page_cache_async_ra+0x94/0xa0 mm/readahead.c:717 do_async_mmap_readahead mm/filemap.c:3169 [inline] filemap_fault+0x3da/0xc30 mm/filemap.c:3223 __do_fault mm/memory.c:4266 [inline] do_shared_fault mm/memory.c:4693 [inline] do_fault mm/memory.c:4767 [inline] do_pte_missing mm/memory.c:3731 [inline] handle_pte_fault mm/memory.c:5039 [inline] __handle_mm_fault mm/memory.c:5180 [inline] handle_mm_fault+0x17db/0x2dd0 mm/memory.c:5345 do_user_addr_fault arch/x86/mm/fault.c:1413 [inline] handle_page_fault arch/x86/mm/fault.c:1505 [inline] exc_page_fault+0x2f7/0x6c0 arch/x86/mm/fault.c:1561 asm_exc_page_fault+0x26/0x30 arch/x86/include/asm/idtentry.h:570 rep_movs_alternative+0x4a/0x70 arch/x86/lib/copy_user_64.S:65 copy_user_generic arch/x86/include/asm/uaccess_64.h:112 [inline] raw_copy_to_user arch/x86/include/asm/uaccess_64.h:133 [inline] copy_to_user_iter lib/iov_iter.c:25 [inline] iterate_ubuf include/linux/iov_iter.h:29 [inline] iterate_and_advance2 include/linux/iov_iter.h:245 [inline] iterate_and_advance include/linux/iov_iter.h:271 [inline] _copy_to_iter+0x137/0xb20 lib/iov_iter.c:186 copy_to_iter include/linux/uio.h:197 [inline] get_random_bytes_user+0x112/0x260 drivers/char/random.c:451 __do_sys_getrandom drivers/char/random.c:1391 [inline] __se_sys_getrandom drivers/char/random.c:1364 [inline] __x64_sys_getrandom+0xcd/0x1a0 drivers/char/random.c:1364 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0x44/0x110 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x63/0x6b read to 0xffff88812ea0df78 of 8 bytes by task 11027 on cpu 1: ondemand_readahead+0x13a/0x690 mm/readahead.c:580 page_cache_async_ra+0x94/0xa0 mm/readahead.c:717 do_async_mmap_readahead mm/filemap.c:3169 [inline] filemap_fault+0x3da/0xc30 mm/filemap.c:3223 __do_fault mm/memory.c:4266 [inline] do_read_fault mm/memory.c:4629 [inline] do_fault mm/memory.c:4763 [inline] do_pte_missing mm/memory.c:3731 [inline] handle_pte_fault mm/memory.c:5039 [inline] __handle_mm_fault mm/memory.c:5180 [inline] handle_mm_fault+0x13bd/0x2dd0 mm/memory.c:5345 do_user_addr_fault arch/x86/mm/fault.c:1413 [inline] handle_page_fault arch/x86/mm/fault.c:1505 [inline] exc_page_fault+0x2f7/0x6c0 arch/x86/mm/fault.c:1561 asm_exc_page_fault+0x26/0x30 arch/x86/include/asm/idtentry.h:570 rep_movs_alternative+0x4a/0x70 arch/x86/lib/copy_user_64.S:65 copy_user_generic arch/x86/include/asm/uaccess_64.h:112 [inline] raw_copy_from_user arch/x86/include/asm/uaccess_64.h:127 [inline] copy_from_user_iter lib/iov_iter.c:55 [inline] iterate_iovec include/linux/iov_iter.h:51 [inline] iterate_and_advance2 include/linux/iov_iter.h:247 [inline] iterate_and_advance include/linux/iov_iter.h:271 [inline] __copy_from_iter lib/iov_iter.c:268 [inline] _copy_from_iter+0x2fc/0xb60 lib/iov_iter.c:279 copy_page_from_iter+0x14f/0x280 lib/iov_iter.c:441 skb_copy_datagram_from_iter+0x1fe/0x430 net/core/datagram.c:592 unix_stream_sendmsg+0x565/0x9b0 net/unix/af_unix.c:2276 sock_sendmsg_nosec net/socket.c:730 [inline] __sock_sendmsg net/socket.c:745 [inline] ____sys_sendmsg+0x37c/0x4d0 net/socket.c:2584 ___sys_sendmsg net/socket.c:2638 [inline] __sys_sendmsg+0x1e9/0x270 net/socket.c:2667 __do_sys_sendmsg net/socket.c:2676 [inline] __se_sys_sendmsg net/socket.c:2674 [inline] __x64_sys_sendmsg+0x46/0x50 net/socket.c:2674 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0x44/0x110 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x63/0x6b value changed: 0x000000000000002c -> 0x0000000000000164 Reported by Kernel Concurrency Sanitizer on: CPU: 1 PID: 11027 Comm: syz-executor.0 Not tainted 6.7.0-rc6-syzkaller-00022-g55cb5f43689d #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 11/17/2023 ==================================================================