================================================================== BUG: KCSAN: data-race in __xa_clear_mark / xas_find_marked read-write to 0xffff88810821b228 of 8 bytes by interrupt on cpu 1: instrument_read_write include/linux/instrumented.h:56 [inline] __instrument_read_write_bitop include/asm-generic/bitops/instrumented-non-atomic.h:84 [inline] ___test_and_clear_bit include/asm-generic/bitops/instrumented-non-atomic.h:114 [inline] node_clear_mark lib/xarray.c:102 [inline] xas_clear_mark lib/xarray.c:922 [inline] __xa_clear_mark+0xf5/0x1e0 lib/xarray.c:2100 __folio_end_writeback+0xf4/0x360 mm/page-writeback.c:2971 folio_end_writeback_no_dropbehind+0x6d/0x1d0 mm/filemap.c:1667 folio_end_writeback+0x1c/0x70 mm/filemap.c:1693 bh_end_async_write+0x1a6/0x250 fs/buffer.c:461 bio_endio+0x35b/0x3f0 block/bio.c:1790 blk_update_request+0x338/0x710 block/blk-mq.c:1016 blk_mq_end_request+0x26/0x50 block/blk-mq.c:1147 lo_complete_rq+0x98/0x130 drivers/block/loop.c:314 blk_complete_reqs block/blk-mq.c:1222 [inline] blk_done_softirq+0x77/0xb0 block/blk-mq.c:1227 handle_softirqs+0xb9/0x280 kernel/softirq.c:622 __do_softirq kernel/softirq.c:656 [inline] invoke_softirq kernel/softirq.c:496 [inline] __irq_exit_rcu+0x42/0xd0 kernel/softirq.c:735 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1062 [inline] sysvec_apic_timer_interrupt+0x74/0x80 arch/x86/kernel/apic/apic.c:1062 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:674 __preempt_count_dec_and_test arch/x86/include/asm/preempt.h:95 [inline] __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:179 [inline] _raw_spin_unlock_irqrestore+0x1a/0x30 kernel/locking/spinlock.c:198 spin_unlock_irqrestore include/linux/spinlock.h:408 [inline] rmqueue_bulk mm/page_alloc.c:2543 [inline] __rmqueue_pcplist+0x93b/0xb40 mm/page_alloc.c:3329 rmqueue_pcplist mm/page_alloc.c:3367 [inline] rmqueue mm/page_alloc.c:3397 [inline] get_page_from_freelist+0x73e/0x1a70 mm/page_alloc.c:3938 __alloc_frozen_pages_noprof+0x161/0x350 mm/page_alloc.c:5221 alloc_pages_mpol+0xa9/0x1d0 mm/mempolicy.c:2490 folio_alloc_mpol_noprof+0x39/0x80 mm/mempolicy.c:2509 shmem_alloc_folio mm/shmem.c:1931 [inline] shmem_alloc_and_add_folio mm/shmem.c:1973 [inline] shmem_get_folio_gfp+0x405/0xdc0 mm/shmem.c:2562 shmem_get_folio mm/shmem.c:2668 [inline] shmem_write_begin+0xfc/0x1f0 mm/shmem.c:3302 generic_perform_write+0x186/0x490 mm/filemap.c:4336 shmem_file_write_iter+0xc5/0xf0 mm/shmem.c:3477 lo_rw_aio+0x6a9/0x760 drivers/block/loop.c:-1 do_req_filebacked drivers/block/loop.c:-1 [inline] loop_handle_cmd drivers/block/loop.c:1921 [inline] loop_process_work+0x567/0xac0 drivers/block/loop.c:1956 loop_workfn+0x31/0x40 drivers/block/loop.c:1980 process_one_work kernel/workqueue.c:3314 [inline] process_scheduled_works+0x4d4/0x9a0 kernel/workqueue.c:3397 worker_thread+0x569/0x750 kernel/workqueue.c:3478 kthread+0x221/0x270 kernel/kthread.c:436 ret_from_fork+0x146/0x330 arch/x86/kernel/process.c:158 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 read to 0xffff88810821b228 of 8 bytes by task 24032 on cpu 0: xas_find_chunk include/linux/xarray.h:1752 [inline] xas_find_marked+0x211/0x650 lib/xarray.c:1510 find_get_entry mm/filemap.c:2081 [inline] filemap_get_folios_tag+0xf7/0x400 mm/filemap.c:2349 __filemap_fdatawait_range mm/filemap.c:524 [inline] filemap_write_and_wait_range+0x1f5/0x370 mm/filemap.c:693 filemap_write_and_wait include/linux/pagemap.h:65 [inline] sync_blockdev+0x35/0x50 block/bdev.c:276 loop_set_status+0x110/0x670 drivers/block/loop.c:1241 loop_set_status_old drivers/block/loop.c:1358 [inline] lo_ioctl+0x795/0x1390 drivers/block/loop.c:1547 blkdev_ioctl+0x387/0x460 block/ioctl.c:797 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:597 [inline] __se_sys_ioctl+0xce/0x140 fs/ioctl.c:583 __x64_sys_ioctl+0x43/0x50 fs/ioctl.c:583 x64_sys_call+0x1563/0x3020 arch/x86/include/generated/asm/syscalls_64.h:17 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0x136/0x3c0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f value changed: 0xffffffff00000000 -> 0xfffff80000000000 Reported by Kernel Concurrency Sanitizer on: CPU: 0 UID: 0 PID: 24032 Comm: syz.3.14195 Tainted: G W syzkaller #0 PREEMPT(lazy) Tainted: [W]=WARN Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/09/2026 ================================================================== loop7: detected capacity change from 16384 to 0