[moderation] [block?] KCSAN: data-race in blk_mq_dispatch_rq_list / blk_mq_dispatch_rq_list (6)

0 views
Skip to first unread message

syzbot

unread,
Apr 29, 2024, 12:17:20 AMApr 29
to syzkaller-upst...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: e67572cd2204 Linux 6.9-rc6
git tree: upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=1021a4ef180000
kernel config: https://syzkaller.appspot.com/x/.config?x=c3beef2aff822313
dashboard link: https://syzkaller.appspot.com/bug?extid=7806fb67500c17892cc5
compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
CC: [ax...@kernel.dk linux...@vger.kernel.org linux-...@vger.kernel.org]

Unfortunately, I don't have any reproducer for this issue yet.

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/7b20866b5f53/disk-e67572cd.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/4c1441ce05e8/vmlinux-e67572cd.xz
kernel image: https://storage.googleapis.com/syzbot-assets/382a9e170b40/bzImage-e67572cd.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+7806fb...@syzkaller.appspotmail.com

==================================================================
BUG: KCSAN: data-race in blk_mq_dispatch_rq_list / blk_mq_dispatch_rq_list

read to 0xffff8881010172f8 of 4 bytes by task 45 on cpu 1:
blk_mq_update_dispatch_busy block/blk-mq.c:1902 [inline]
blk_mq_dispatch_rq_list+0xec2/0x10d0 block/blk-mq.c:2149
__blk_mq_sched_dispatch_requests+0x1ce/0xd50 block/blk-mq-sched.c:301
blk_mq_sched_dispatch_requests+0x78/0xe0 block/blk-mq-sched.c:331
blk_mq_run_hw_queue+0x29c/0x4d0 block/blk-mq.c:2268
blk_mq_run_hw_queues+0x15b/0x1e0 block/blk-mq.c:2317
blk_mq_requeue_work+0x408/0x430 block/blk-mq.c:1486
process_one_work kernel/workqueue.c:3254 [inline]
process_scheduled_works+0x465/0x990 kernel/workqueue.c:3335
worker_thread+0x526/0x730 kernel/workqueue.c:3416
kthread+0x1d1/0x210 kernel/kthread.c:388
ret_from_fork+0x4b/0x60 arch/x86/kernel/process.c:147
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244

write to 0xffff8881010172f8 of 4 bytes by task 35 on cpu 0:
blk_mq_dispatch_rq_list+0xee0/0x10d0
__blk_mq_do_dispatch_sched block/blk-mq-sched.c:170 [inline]
blk_mq_do_dispatch_sched block/blk-mq-sched.c:184 [inline]
__blk_mq_sched_dispatch_requests+0x604/0xd50 block/blk-mq-sched.c:309
blk_mq_sched_dispatch_requests+0x78/0xe0 block/blk-mq-sched.c:331
blk_mq_run_hw_queue+0x29c/0x4d0 block/blk-mq.c:2268
blk_mq_flush_plug_list+0x7bc/0xde0 block/blk-mq.c:2817
__blk_flush_plug+0x216/0x290 block/blk-core.c:1190
blk_finish_plug+0x48/0x70 block/blk-core.c:1217
wb_writeback+0x6a2/0x6f0 fs/fs-writeback.c:2155
wb_check_start_all fs/fs-writeback.c:2245 [inline]
wb_do_writeback fs/fs-writeback.c:2271 [inline]
wb_workfn+0x4ea/0x940 fs/fs-writeback.c:2304
process_one_work kernel/workqueue.c:3254 [inline]
process_scheduled_works+0x465/0x990 kernel/workqueue.c:3335
worker_thread+0x526/0x730 kernel/workqueue.c:3416
kthread+0x1d1/0x210 kernel/kthread.c:388
ret_from_fork+0x4b/0x60 arch/x86/kernel/process.c:147
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244

value changed: 0x00000002 -> 0x00000003

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 PID: 35 Comm: kworker/u8:2 Tainted: G W 6.9.0-rc6-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue: writeback wb_workfn (flush-8:0)
==================================================================


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzk...@googlegroups.com.

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title

If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)

If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report

If you want to undo deduplication, reply with:
#syz undup
Reply all
Reply to author
Forward
0 new messages