syzbot


KCSAN: data-race in bio_endio / blk_mq_submit_bio

Status: auto-closed as invalid on 2021/01/23 11:49
Subsystems: block
[Documentation on labels]
First crash: 1222d, last: 1222d
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in bio_endio / blk_mq_submit_bio (2) block 1 1123d 1123d 0/26 auto-closed as invalid on 2021/05/17 09:51

Sample crash report:
==================================================================
BUG: KCSAN: data-race in bio_endio / blk_mq_submit_bio

read-write to 0xffff88802c3d5314 of 2 bytes by task 10765 on cpu 0:
 bio_set_flag include/linux/bio.h:258 [inline]
 rq_qos_throttle block/blk-rq-qos.h:180 [inline]
 blk_mq_submit_bio+0x1fe/0x1000 block/blk-mq.c:2175
 __submit_bio_noacct_mq block/blk-core.c:1027 [inline]
 submit_bio_noacct+0x75d/0x910 block/blk-core.c:1060
 submit_bio+0x1f3/0x350 block/blk-core.c:1130
 ext4_io_submit fs/ext4/page-io.c:382 [inline]
 io_submit_add_bh fs/ext4/page-io.c:425 [inline]
 ext4_bio_write_page+0xa3d/0xe60 fs/ext4/page-io.c:552
 mpage_submit_page fs/ext4/inode.c:2092 [inline]
 mpage_map_and_submit_buffers fs/ext4/inode.c:2340 [inline]
 mpage_map_and_submit_extent fs/ext4/inode.c:2479 [inline]
 ext4_writepages+0xe9b/0x1e30 fs/ext4/inode.c:2792
 do_writepages+0x7b/0x150 mm/page-writeback.c:2352
 __filemap_fdatawrite_range+0x19d/0x1d0 mm/filemap.c:422
 file_write_and_wait_range+0x9f/0x120 mm/filemap.c:761
 ext4_sync_file+0x105/0x6c0 fs/ext4/fsync.c:151
 vfs_fsync_range+0x107/0x120 fs/sync.c:200
 generic_write_sync include/linux/fs.h:2737 [inline]
 ext4_buffered_write_iter+0x384/0x3d0 fs/ext4/file.c:278
 ext4_file_write_iter+0x45e/0x1090 fs/ext4/file.c:503
 call_write_iter include/linux/fs.h:1901 [inline]
 new_sync_write fs/read_write.c:518 [inline]
 vfs_write+0x6d4/0x7c0 fs/read_write.c:605
 ksys_write+0xce/0x180 fs/read_write.c:658
 __do_sys_write fs/read_write.c:670 [inline]
 __se_sys_write fs/read_write.c:667 [inline]
 __x64_sys_write+0x3e/0x50 fs/read_write.c:667
 do_syscall_64+0x39/0x80 arch/x86/entry/common.c:46
 entry_SYSCALL_64_after_hwframe+0x44/0xa9

read to 0xffff88802c3d5314 of 2 bytes by interrupt on cpu 1:
 bio_flagged include/linux/bio.h:253 [inline]
 bio_remaining_done block/bio.c:1390 [inline]
 bio_endio+0x3c/0x350 block/bio.c:1420
 req_bio_endio block/blk-core.c:263 [inline]
 blk_update_request+0x4e5/0xb00 block/blk-core.c:1461
 scsi_end_request+0x51/0x470 drivers/scsi/scsi_lib.c:569
 scsi_io_completion+0x104/0xfb0 drivers/scsi/scsi_lib.c:968
 scsi_finish_command+0x263/0x2b0 drivers/scsi/scsi.c:214
 scsi_softirq_done+0xdf/0x440 drivers/scsi/scsi_lib.c:1446
 blk_done_softirq+0x145/0x190 block/blk-mq.c:588
 __do_softirq+0x13c/0x2c3 kernel/softirq.c:343
 asm_call_irq_on_stack+0xf/0x20
 __run_on_irqstack arch/x86/include/asm/irq_stack.h:26 [inline]
 run_on_irqstack_cond arch/x86/include/asm/irq_stack.h:77 [inline]
 do_softirq_own_stack+0x32/0x40 arch/x86/kernel/irq_64.c:77
 invoke_softirq kernel/softirq.c:226 [inline]
 __irq_exit_rcu+0xb4/0xc0 kernel/softirq.c:420
 common_interrupt+0xb5/0x130 arch/x86/kernel/irq.c:239
 asm_common_interrupt+0x1e/0x40 arch/x86/include/asm/idtentry.h:619
 native_restore_fl arch/x86/include/asm/irqflags.h:41 [inline]
 arch_local_irq_restore arch/x86/include/asm/irqflags.h:84 [inline]
 mod_lruvec_page_state include/linux/vmstat.h:478 [inline]
 inc_lruvec_page_state include/linux/vmstat.h:548 [inline]
 __test_set_page_writeback+0x448/0x4d0 mm/page-writeback.c:2808
 ext4_bio_write_page+0xef/0xe60 fs/ext4/page-io.c:453
 mpage_submit_page fs/ext4/inode.c:2092 [inline]
 mpage_map_and_submit_buffers fs/ext4/inode.c:2340 [inline]
 mpage_map_and_submit_extent fs/ext4/inode.c:2479 [inline]
 ext4_writepages+0xe9b/0x1e30 fs/ext4/inode.c:2792
 do_writepages+0x7b/0x150 mm/page-writeback.c:2352
 __filemap_fdatawrite_range+0x19d/0x1d0 mm/filemap.c:422
 file_write_and_wait_range+0x9f/0x120 mm/filemap.c:761
 ext4_sync_file+0x105/0x6c0 fs/ext4/fsync.c:151
 vfs_fsync_range+0x107/0x120 fs/sync.c:200
 generic_write_sync include/linux/fs.h:2737 [inline]
 ext4_buffered_write_iter+0x384/0x3d0 fs/ext4/file.c:278
 ext4_file_write_iter+0x45e/0x1090 fs/ext4/file.c:503
 call_write_iter include/linux/fs.h:1901 [inline]
 new_sync_write fs/read_write.c:518 [inline]
 vfs_write+0x6d4/0x7c0 fs/read_write.c:605
 ksys_write+0xce/0x180 fs/read_write.c:658
 __do_sys_write fs/read_write.c:670 [inline]
 __se_sys_write fs/read_write.c:667 [inline]
 __x64_sys_write+0x3e/0x50 fs/read_write.c:667
 do_syscall_64+0x39/0x80 arch/x86/entry/common.c:46
 entry_SYSCALL_64_after_hwframe+0x44/0xa9

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 PID: 10771 Comm: syz-executor.2 Not tainted 5.10.0-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
==================================================================

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/12/19 11:44 upstream 3644e2d2dda7 04201c06 .config console log report info ci2-upstream-kcsan-gce
* Struck through repros no longer work on HEAD.