possible deadlock in blk_request_module (2)

Status: upstream: reported on 2026/05/25 20:24
Subsystems: block
Labels: prio:low
[Documentation on labels]
Reported-by: syzbot+fb0ff9bfe34ad282ebd4@syzkaller.appspotmail.com
First crash: 99d, last: 18h44m
✨ AI Jobs (1)
ID Workflow Result Correct Bug Created Started Finished Revision
5aabafd3 assessment-security DenialOfService: ✅ Exploitable: ❌ FilesystemTrigger: ❌ NetworkTrigger: ❌ PeripheralTrigger: ❌ RemoteTrigger: ❌ Unprivileged: ❌ UserNamespace: ❌ VMGuestTrigger: ❌ VMHostTrigger: ❌ possible deadlock in blk_request_module (2) 2026/06/02 05:12 2026/06/02 05:12 2026/06/02 05:18 1095583b
Discussions (3)
Title Replies (including bot) Last reply
Re: [PATCH v3] loop: Fix NULL pointer dereference in lo_rw_aio() 8 (8) 2026/05/30 23:57
[PATCH] block: assign caller-specific lockdep class to disk->open_mutex 2 (2) 2026/05/30 22:50
[syzbot] [block?] possible deadlock in blk_request_module (2) 0 (1) 2026/05/25 20:24
Similar bugs (4)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-5.15 possible deadlock in blk_request_module (2) 4 6 254d 416d 0/3 auto-obsoleted due to no activity on 2026/03/27 18:48
linux-5.15 possible deadlock in blk_request_module (3) 4 2 124d 147d 0/3 auto-obsoleted due to no activity on 2026/08/04 13:53
linux-5.15 possible deadlock in blk_request_module 4 6 650d 780d 0/3 auto-obsoleted due to no activity on 2025/02/24 02:18
upstream possible deadlock in blk_request_module block 4 2 1756d 1800d 0/29 auto-closed as invalid on 2022/03/06 21:21

Sample crash report:
md: couldn't update array info. -22
======================================================
WARNING: possible circular locking dependency detected
syzkaller #0 Tainted: G             L     
------------------------------------------------------
syz.8.2408/15191 is trying to acquire lock:
ffffffff8f54f900 (major_names_lock){+.+.}-{4:4}, at: blk_probe_dev block/genhd.c:878 [inline]
ffffffff8f54f900 (major_names_lock){+.+.}-{4:4}, at: blk_request_module+0x35/0x2a0 block/genhd.c:894

but task is already holding lock:
ffff88807944e358 (&mddev->reconfig_mutex){+.+.}-{4:4}, at: mddev_lock drivers/md/md.h:713 [inline]
ffff88807944e358 (&mddev->reconfig_mutex){+.+.}-{4:4}, at: mddev_suspend_and_lock+0x48/0xf0 drivers/md/md.h:1019

which lock already depends on the new lock.


the existing dependency chain (in reverse order) is:

-> #3 (&mddev->reconfig_mutex){+.+.}-{4:4}:
       __mutex_lock_common kernel/locking/mutex.c:646 [inline]
       __mutex_lock+0x19d/0x1550 kernel/locking/mutex.c:821
       mddev_lock_nointr drivers/md/md.h:734 [inline]
       md_start_sync+0x15a/0x1010 drivers/md/md.c:10275
       process_one_work kernel/workqueue.c:3387 [inline]
       process_scheduled_works+0xc3d/0x1630 kernel/workqueue.c:3470
       worker_thread+0xa47/0xfb0 kernel/workqueue.c:3551
       kthread+0x38b/0x480 kernel/kthread.c:436
       ret_from_fork+0x514/0xb70 arch/x86/kernel/process.c:158
       ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245

-> #2 ((work_completion)(&mddev->sync_work)){+.+.}-{0:0}:
       process_one_work kernel/workqueue.c:3363 [inline]
       process_scheduled_works+0xc03/0x1630 kernel/workqueue.c:3470
       worker_thread+0xa47/0xfb0 kernel/workqueue.c:3551
       kthread+0x38b/0x480 kernel/kthread.c:436
       ret_from_fork+0x514/0xb70 arch/x86/kernel/process.c:158
       ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245

-> #1 ((wq_completion)md_misc){+.+.}-{0:0}:
       touch_wq_lockdep_map+0xcb/0x180 kernel/workqueue.c:4102
       __flush_workqueue+0x148/0x1470 kernel/workqueue.c:4144
       md_alloc+0x32/0xf20 drivers/md/md.c:6334
       md_alloc_and_put+0x1a/0x1f0 drivers/md/md.c:6423
       blk_probe_dev block/genhd.c:881 [inline]
       blk_request_module+0x27d/0x2a0 block/genhd.c:-1
       blkdev_get_no_open+0x3f/0xe0 block/bdev.c:870
       bdev_file_open_by_dev+0xa0/0x240 block/bdev.c:1091
       swsusp_check+0x56/0x490 kernel/power/swap.c:1574
       software_resume+0x51/0x4c0 kernel/power/hibernate.c:1023
       resume_store+0x333/0x4f0 kernel/power/hibernate.c:1307
       kernfs_fop_write_iter+0x3a4/0x540 fs/kernfs/file.c:345
       new_sync_write fs/read_write.c:595 [inline]
       vfs_write+0x612/0xba0 fs/read_write.c:687
       ksys_write+0x150/0x270 fs/read_write.c:739
       do_syscall_x64 arch/x86/entry/syscall_64.c:61 [inline]
       do_syscall_64+0x166/0x520 arch/x86/entry/syscall_64.c:84
       entry_SYSCALL_64_after_hwframe+0x77/0x7f

-> #0 (major_names_lock){+.+.}-{4:4}:
       check_prev_add kernel/locking/lockdep.c:3181 [inline]
       check_prevs_add kernel/locking/lockdep.c:3300 [inline]
       validate_chain kernel/locking/lockdep.c:3924 [inline]
       __lock_acquire+0x1520/0x2cf0 kernel/locking/lockdep.c:5253
       lock_acquire+0x106/0x350 kernel/locking/lockdep.c:5886
       __mutex_lock_common kernel/locking/mutex.c:646 [inline]
       __mutex_lock+0x19d/0x1550 kernel/locking/mutex.c:821
       blk_probe_dev block/genhd.c:878 [inline]
       blk_request_module+0x35/0x2a0 block/genhd.c:894
       blkdev_get_no_open+0x3f/0xe0 block/bdev.c:870
       bdev_file_open_by_dev+0xa0/0x240 block/bdev.c:1091
       md_import_device+0x2e9/0x650 drivers/md/md.c:3847
       md_add_new_disk+0x669/0x1850 drivers/md/md.c:7549
       md_ioctl+0x200a/0x2610 drivers/md/md.c:8499
       blkdev_ioctl+0x5e3/0x740 block/ioctl.c:798
       vfs_ioctl fs/ioctl.c:51 [inline]
       __do_sys_ioctl fs/ioctl.c:597 [inline]
       __se_sys_ioctl+0xfc/0x170 fs/ioctl.c:583
       do_syscall_x64 arch/x86/entry/syscall_64.c:61 [inline]
       do_syscall_64+0x166/0x520 arch/x86/entry/syscall_64.c:84
       entry_SYSCALL_64_after_hwframe+0x77/0x7f

other info that might help us debug this:

Chain exists of:
  major_names_lock --> (work_completion)(&mddev->sync_work) --> &mddev->reconfig_mutex

 Possible unsafe locking scenario:

       CPU0                    CPU1
       ----                    ----
  lock(&mddev->reconfig_mutex);
                               lock((work_completion)(&mddev->sync_work));
                               lock(&mddev->reconfig_mutex);
  lock(major_names_lock);

 *** DEADLOCK ***

locks held by syz.8.2408/15191: 1, last CPU#1:
 #0: ffff88807944e358 (&mddev->reconfig_mutex){+.+.}-{4:4}, at: mddev_lock drivers/md/md.h:713 [inline]
 #0: ffff88807944e358 (&mddev->reconfig_mutex){+.+.}-{4:4}, at: mddev_suspend_and_lock+0x48/0xf0 drivers/md/md.h:1019

stack backtrace:
CPU: 1 UID: 0 PID: 15191 Comm: syz.8.2408 Tainted: G             L      syzkaller #0 PREEMPT(full) 
Tainted: [L]=SOFTLOCKUP
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/16/2026
Call Trace:
 <TASK>
 dump_stack_lvl+0xe8/0x150 lib/dump_stack.c:120
 print_circular_bug+0x2e1/0x300 kernel/locking/lockdep.c:2059
 check_noncircular+0x12e/0x150 kernel/locking/lockdep.c:2191
 check_prev_add kernel/locking/lockdep.c:3181 [inline]
 check_prevs_add kernel/locking/lockdep.c:3300 [inline]
 validate_chain kernel/locking/lockdep.c:3924 [inline]
 __lock_acquire+0x1520/0x2cf0 kernel/locking/lockdep.c:5253
 lock_acquire+0x106/0x350 kernel/locking/lockdep.c:5886
 __mutex_lock_common kernel/locking/mutex.c:646 [inline]
 __mutex_lock+0x19d/0x1550 kernel/locking/mutex.c:821
 blk_probe_dev block/genhd.c:878 [inline]
 blk_request_module+0x35/0x2a0 block/genhd.c:894
 blkdev_get_no_open+0x3f/0xe0 block/bdev.c:870
 bdev_file_open_by_dev+0xa0/0x240 block/bdev.c:1091
 md_import_device+0x2e9/0x650 drivers/md/md.c:3847
 md_add_new_disk+0x669/0x1850 drivers/md/md.c:7549
 md_ioctl+0x200a/0x2610 drivers/md/md.c:8499
 blkdev_ioctl+0x5e3/0x740 block/ioctl.c:798
 vfs_ioctl fs/ioctl.c:51 [inline]
 __do_sys_ioctl fs/ioctl.c:597 [inline]
 __se_sys_ioctl+0xfc/0x170 fs/ioctl.c:583
 do_syscall_x64 arch/x86/entry/syscall_64.c:61 [inline]
 do_syscall_64+0x166/0x520 arch/x86/entry/syscall_64.c:84
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fb093b9e159
Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 e8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007fb094b52028 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 00007fb093e25fa0 RCX: 00007fb093b9e159
RDX: 0000200000000420 RSI: 0000000040140921 RDI: 0000000000000003
RBP: 00007fb093c35024 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fb093e26038 R14: 00007fb093e25fa0 R15: 00007ffe01ee12b8
 </TASK>
md: could not open device unknown-block(0,0).
md: md_import_device returned -6

Crashes (69):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/08/27 20:46 upstream 73e3f0710014 e2fa417d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root possible deadlock in blk_request_module
2026/08/27 01:14 upstream 45c13f3f9e3b a2b77b9e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root possible deadlock in blk_request_module
2026/08/27 00:50 upstream 45c13f3f9e3b a2b77b9e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root possible deadlock in blk_request_module
2026/08/26 21:20 upstream 45c13f3f9e3b a2b77b9e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root possible deadlock in blk_request_module
2026/08/26 21:19 upstream 45c13f3f9e3b a2b77b9e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root possible deadlock in blk_request_module
2026/08/26 21:19 upstream 45c13f3f9e3b a2b77b9e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root possible deadlock in blk_request_module
2026/08/26 21:19 upstream 45c13f3f9e3b a2b77b9e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root possible deadlock in blk_request_module
2026/08/26 21:19 upstream 45c13f3f9e3b a2b77b9e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root possible deadlock in blk_request_module
2026/08/26 21:19 upstream 45c13f3f9e3b a2b77b9e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root possible deadlock in blk_request_module
2026/08/26 21:19 upstream 45c13f3f9e3b a2b77b9e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root possible deadlock in blk_request_module
2026/08/25 00:47 upstream 0a0d1d55dad5 23caa175 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root possible deadlock in blk_request_module
2026/08/21 11:07 upstream 7f063b2f17ea 1e72964b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root possible deadlock in blk_request_module
2026/08/21 11:05 upstream 7f063b2f17ea 1e72964b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root possible deadlock in blk_request_module
2026/08/21 11:05 upstream 7f063b2f17ea 1e72964b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root possible deadlock in blk_request_module
2026/08/27 16:17 upstream 818bebeb63dd c53a1b9c .config console log report [disk image (non-bootable)] [vmlinux] [kernel image] ci-snapshot-upstream-root possible deadlock in blk_request_module
2026/08/26 01:04 upstream 818bebeb63dd 6a91adb4 .config console log report [disk image (non-bootable)] [vmlinux] [kernel image] ci-snapshot-upstream-root possible deadlock in blk_request_module
2026/08/22 14:36 upstream 818bebeb63dd 1e72964b .config console log report [disk image (non-bootable)] [vmlinux] [kernel image] ci-snapshot-upstream-root possible deadlock in blk_request_module
2026/08/22 00:08 upstream 818bebeb63dd 1e72964b .config console log report [disk image (non-bootable)] [vmlinux] [kernel image] ci-snapshot-upstream-root possible deadlock in blk_request_module
2026/08/22 00:08 upstream 818bebeb63dd 1e72964b .config console log report [disk image (non-bootable)] [vmlinux] [kernel image] ci-snapshot-upstream-root possible deadlock in blk_request_module
2026/08/22 00:08 upstream 818bebeb63dd 1e72964b .config console log report [disk image (non-bootable)] [vmlinux] [kernel image] ci-snapshot-upstream-root possible deadlock in blk_request_module
2026/08/21 01:43 upstream 9d2ed026f031 1e72964b .config console log report [disk image (non-bootable)] [vmlinux] [kernel image] ci-snapshot-upstream-root possible deadlock in blk_request_module
2026/08/28 04:49 linux-next 3d83758432b5 e2fa417d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/08/27 17:47 linux-next 3d83758432b5 e2fa417d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/08/27 11:31 linux-next f82a5da2f049 a2b77b9e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/08/26 23:11 linux-next f82a5da2f049 a2b77b9e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in blk_request_module
2026/08/26 21:16 linux-next f82a5da2f049 a2b77b9e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/08/26 20:46 linux-next f82a5da2f049 a2b77b9e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/08/26 20:13 linux-next f82a5da2f049 a2b77b9e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/08/26 20:13 linux-next f82a5da2f049 a2b77b9e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/08/26 05:14 linux-next a8406e6c0b79 6a91adb4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/08/25 20:14 linux-next a8406e6c0b79 614e416a .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in blk_request_module
2026/08/25 20:03 linux-next a8406e6c0b79 614e416a .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in blk_request_module
2026/08/25 20:01 linux-next a8406e6c0b79 614e416a .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in blk_request_module
2026/08/25 19:07 linux-next a8406e6c0b79 614e416a .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in blk_request_module
2026/08/25 18:44 linux-next a8406e6c0b79 614e416a .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in blk_request_module
2026/08/25 13:54 linux-next 4b18edbd8e70 614e416a .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/08/24 23:16 linux-next 4b18edbd8e70 23caa175 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/08/21 14:54 linux-next 7079a12d7506 1e72964b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/08/20 23:44 linux-next 7079a12d7506 1e72964b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in blk_request_module
2026/08/20 19:59 linux-next 7079a12d7506 1e72964b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in blk_request_module
2026/06/07 05:56 linux-next f7af91adc230 cc095639 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/06/05 10:48 linux-next f7af91adc230 197909be .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/06/04 12:49 linux-next f7af91adc230 197909be .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/06/02 15:17 linux-next f7af91adc230 62fe1528 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/05/26 05:42 linux-next c1ecb239fa34 c69befb3 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/05/25 09:22 linux-next c1ecb239fa34 c69befb3 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/05/23 11:54 linux-next c1ecb239fa34 c69befb3 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/05/21 21:23 linux-next 550604d6c9b9 e195359d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
2026/05/21 20:20 linux-next 550604d6c9b9 e195359d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in blk_request_module
* Struck through repros no longer work on HEAD.