syzbot


KCSAN: data-race in dio_bio_end_io / dio_new_bio (5)

Status: moderation: reported on 2025/03/18 19:19
Subsystems: exfat
[Documentation on labels]
Reported-by: syzbot+2afdfa962af04de7f342@syzkaller.appspotmail.com
First crash: 1d03h, last: 1d03h
Similar bugs (4)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in dio_bio_end_io / dio_new_bio (3) exfat 15 157d 211d 0/28 auto-obsoleted due to no activity on 2024/11/16 23:08
upstream KCSAN: data-race in dio_bio_end_io / dio_new_bio (4) exfat 5 71d 91d 0/28 auto-obsoleted due to no activity on 2025/03/04 06:15
upstream KCSAN: data-race in dio_bio_end_io / dio_new_bio exfat 11 515d 626d 0/28 auto-obsoleted due to no activity on 2023/11/25 15:37
upstream KCSAN: data-race in dio_bio_end_io / dio_new_bio (2) exfat 1 437d 435d 0/28 auto-obsoleted due to no activity on 2024/02/11 03:04

Sample crash report:
==================================================================
BUG: KCSAN: data-race in dio_bio_end_io / dio_new_bio

read-write to 0xffff88811aab9bd8 of 8 bytes by interrupt on cpu 1:
 dio_bio_end_io+0x53/0xd0 fs/direct-io.c:387
 bio_endio+0x369/0x410 block/bio.c:1548
 blk_update_request+0x368/0x860 block/blk-mq.c:983
 blk_mq_end_request+0x26/0x50 block/blk-mq.c:1145
 lo_complete_rq+0xce/0x180 drivers/block/loop.c:395
 blk_complete_reqs block/blk-mq.c:1220 [inline]
 blk_done_softirq+0x74/0xb0 block/blk-mq.c:1225
 handle_softirqs+0xbf/0x280 kernel/softirq.c:561
 run_ksoftirqd+0x1c/0x30 kernel/softirq.c:950
 smpboot_thread_fn+0x31c/0x4c0 kernel/smpboot.c:164
 kthread+0x4ae/0x520 kernel/kthread.c:464
 ret_from_fork+0x4b/0x60 arch/x86/kernel/process.c:148
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244

read to 0xffff88811aab9bd8 of 8 bytes by task 3337 on cpu 0:
 dio_bio_reap fs/direct-io.c:550 [inline]
 dio_new_bio+0x249/0x460 fs/direct-io.c:669
 dio_send_cur_page+0x1f2/0x7a0 fs/direct-io.c:750
 submit_page_section+0x1a3/0x5b0 fs/direct-io.c:815
 do_direct_IO fs/direct-io.c:1030 [inline]
 __blockdev_direct_IO+0x11bb/0x1e80 fs/direct-io.c:1243
 blockdev_direct_IO include/linux/fs.h:3412 [inline]
 fat_direct_IO+0x10a/0x1d0 fs/fat/inode.c:281
 generic_file_direct_write+0xf7/0x250 mm/filemap.c:4036
 __generic_file_write_iter+0xae/0x120 mm/filemap.c:4205
 generic_file_write_iter+0x8f/0x310 mm/filemap.c:4245
 iter_file_splice_write+0x5f1/0x980 fs/splice.c:743
 do_splice_from fs/splice.c:941 [inline]
 direct_splice_actor+0x160/0x2c0 fs/splice.c:1164
 splice_direct_to_actor+0x302/0x670 fs/splice.c:1108
 do_splice_direct_actor fs/splice.c:1207 [inline]
 do_splice_direct+0xd7/0x150 fs/splice.c:1233
 do_sendfile+0x398/0x660 fs/read_write.c:1363
 __do_sys_sendfile64 fs/read_write.c:1424 [inline]
 __se_sys_sendfile64 fs/read_write.c:1410 [inline]
 __x64_sys_sendfile64+0x110/0x150 fs/read_write.c:1410
 x64_sys_call+0xfbd/0x2dc0 arch/x86/include/generated/asm/syscalls_64.h:41
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xc9/0x1c0 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

value changed: 0xffff88812f600300 -> 0xffff88812f600d80

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 UID: 0 PID: 3337 Comm: syz.0.9050 Not tainted 6.14.0-rc7-syzkaller-00067-g76b6905c11fd #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025
==================================================================

Crashes (3):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/03/18 19:30 upstream 76b6905c11fd 22a6c2b1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in dio_bio_end_io / dio_new_bio
2025/03/18 19:19 upstream 76b6905c11fd 22a6c2b1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in dio_bio_end_io / dio_new_bio
2025/03/18 19:18 upstream 76b6905c11fd 22a6c2b1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in dio_bio_end_io / dio_new_bio
* Struck through repros no longer work on HEAD.