| Title | Replies (including bot) | Last reply |
|---|---|---|
| [syzbot] Monthly scsi report (Jan 2025) | 0 (1) | 2025/01/16 13:07 |
| [syzbot] [scsi?] possible deadlock in sd_remove | 1 (5) | 2025/01/02 10:41 |
syzbot |
sign-in | mailing list | source | docs |
| Title | Replies (including bot) | Last reply |
|---|---|---|
| [syzbot] Monthly scsi report (Jan 2025) | 0 (1) | 2025/01/16 13:07 |
| [syzbot] [scsi?] possible deadlock in sd_remove | 1 (5) | 2025/01/02 10:41 |
| Created | Duration | User | Patch | Repo | Result |
|---|---|---|---|---|---|
| 2025/06/21 13:10 | 24m | retest repro | git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci | OK log | |
| 2025/06/21 13:10 | 24m | retest repro | git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci | OK log | |
| 2025/04/12 11:05 | 21m | retest repro | git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci | report log | |
| 2025/04/12 11:05 | 24m | retest repro | git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci | report log | |
| 2025/01/31 23:31 | 33m | retest repro | git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci | report log | |
| 2025/01/31 23:31 | 34m | retest repro | git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci | report log | |
| 2025/01/02 10:28 | 11m | hdanton@sina.com | https://github.com/ming1/linux v6.13/block-fix | error |
======================================================
WARNING: possible circular locking dependency detected
6.13.0-rc7-syzkaller-00043-g619f0b6fad52 #0 Not tainted
------------------------------------------------------
kworker/0:7/5892 is trying to acquire lock:
ffff88806b47a3e0 ((work_completion)(&(&wb->dwork)->work)){+.+.}-{0:0}, at: rcu_lock_acquire include/linux/rcupdate.h:337 [inline]
ffff88806b47a3e0 ((work_completion)(&(&wb->dwork)->work)){+.+.}-{0:0}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline]
ffff88806b47a3e0 ((work_completion)(&(&wb->dwork)->work)){+.+.}-{0:0}, at: start_flush_work kernel/workqueue.c:4148 [inline]
ffff88806b47a3e0 ((work_completion)(&(&wb->dwork)->work)){+.+.}-{0:0}, at: __flush_work+0xe9/0xc60 kernel/workqueue.c:4206
but task is already holding lock:
ffff88802865a800 (&q->q_usage_counter(queue)#56){++++}-{0:0}, at: sd_remove+0x8d/0x110 drivers/scsi/sd.c:4072
which lock already depends on the new lock.
the existing dependency chain (in reverse order) is:
-> #3 (&q->q_usage_counter(queue)#56){++++}-{0:0}:
lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5849
blk_queue_enter+0xe1/0x600 block/blk-core.c:328
blk_mq_alloc_request+0x4fa/0xaa0 block/blk-mq.c:652
scsi_alloc_request drivers/scsi/scsi_lib.c:1225 [inline]
scsi_execute_cmd+0x16c/0x10e0 drivers/scsi/scsi_lib.c:307
read_capacity_10+0x256/0x9c0 drivers/scsi/sd.c:2766
sd_read_capacity drivers/scsi/sd.c:2834 [inline]
sd_revalidate_disk+0x1066/0xbce0 drivers/scsi/sd.c:3734
sd_probe+0x9fa/0x1100 drivers/scsi/sd.c:4010
really_probe+0x2ba/0xad0 drivers/base/dd.c:658
__driver_probe_device+0x1a2/0x390 drivers/base/dd.c:800
driver_probe_device+0x50/0x430 drivers/base/dd.c:830
__device_attach_driver+0x2d6/0x530 drivers/base/dd.c:958
bus_for_each_drv+0x250/0x2e0 drivers/base/bus.c:459
__device_attach_async_helper+0x22d/0x300 drivers/base/dd.c:987
async_run_entry_fn+0xaa/0x420 kernel/async.c:129
process_one_work kernel/workqueue.c:3236 [inline]
process_scheduled_works+0xa68/0x1840 kernel/workqueue.c:3317
worker_thread+0x870/0xd30 kernel/workqueue.c:3398
kthread+0x2f2/0x390 kernel/kthread.c:389
ret_from_fork+0x4d/0x80 arch/x86/kernel/process.c:147
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
-> #2 (&q->limits_lock){+.+.}-{4:4}:
lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5849
__mutex_lock_common kernel/locking/mutex.c:585 [inline]
__mutex_lock+0x1ac/0xee0 kernel/locking/mutex.c:735
queue_limits_start_update include/linux/blkdev.h:947 [inline]
loop_reconfigure_limits+0x43f/0x900 drivers/block/loop.c:998
loop_set_block_size drivers/block/loop.c:1473 [inline]
lo_simple_ioctl drivers/block/loop.c:1496 [inline]
lo_ioctl+0x1351/0x1f50 drivers/block/loop.c:1559
blkdev_ioctl+0x57f/0x6a0 block/ioctl.c:693
vfs_ioctl fs/ioctl.c:51 [inline]
__do_sys_ioctl fs/ioctl.c:906 [inline]
__se_sys_ioctl+0xf7/0x170 fs/ioctl.c:892
do_syscall_x64 arch/x86/entry/common.c:52 [inline]
do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83
entry_SYSCALL_64_after_hwframe+0x77/0x7f
-> #1 (&q->q_usage_counter(io)#19){++++}-{0:0}:
lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5849
bio_queue_enter block/blk.h:75 [inline]
blk_mq_submit_bio+0x1536/0x2390 block/blk-mq.c:3090
__submit_bio+0x2c6/0x560 block/blk-core.c:629
__submit_bio_noacct_mq block/blk-core.c:710 [inline]
submit_bio_noacct_nocheck+0x4d3/0xe30 block/blk-core.c:739
__block_write_full_folio+0x8b1/0xed0 fs/buffer.c:1904
write_cache_pages+0xd2/0x230 mm/page-writeback.c:2665
blkdev_writepages+0xa9/0x100 block/fops.c:433
do_writepages+0x361/0x880 mm/page-writeback.c:2708
__writeback_single_inode+0x14f/0x10d0 fs/fs-writeback.c:1680
writeback_sb_inodes+0x820/0x1360 fs/fs-writeback.c:1976
__writeback_inodes_wb+0x11b/0x260 fs/fs-writeback.c:2047
wb_writeback+0x427/0xb80 fs/fs-writeback.c:2158
wb_check_background_flush fs/fs-writeback.c:2228 [inline]
wb_do_writeback fs/fs-writeback.c:2316 [inline]
wb_workfn+0xc4b/0x1080 fs/fs-writeback.c:2343
process_one_work kernel/workqueue.c:3236 [inline]
process_scheduled_works+0xa68/0x1840 kernel/workqueue.c:3317
worker_thread+0x870/0xd30 kernel/workqueue.c:3398
kthread+0x2f2/0x390 kernel/kthread.c:389
ret_from_fork+0x4d/0x80 arch/x86/kernel/process.c:147
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
-> #0 ((work_completion)(&(&wb->dwork)->work)){+.+.}-{0:0}:
check_prev_add kernel/locking/lockdep.c:3161 [inline]
check_prevs_add kernel/locking/lockdep.c:3280 [inline]
validate_chain+0x18ef/0x5920 kernel/locking/lockdep.c:3904
__lock_acquire+0x1397/0x2100 kernel/locking/lockdep.c:5226
lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5849
touch_work_lockdep_map kernel/workqueue.c:3920 [inline]
start_flush_work kernel/workqueue.c:4174 [inline]
__flush_work+0x739/0xc60 kernel/workqueue.c:4206
flush_work kernel/workqueue.c:4263 [inline]
flush_delayed_work+0x169/0x1c0 kernel/workqueue.c:4285
wb_shutdown+0x186/0x1e0 mm/backing-dev.c:575
bdi_unregister+0x19a/0x5d0 mm/backing-dev.c:1158
del_gendisk+0x400/0x920 block/genhd.c:707
sd_remove+0x8d/0x110 drivers/scsi/sd.c:4072
device_remove drivers/base/dd.c:569 [inline]
__device_release_driver drivers/base/dd.c:1273 [inline]
device_release_driver_internal+0x505/0x7c0 drivers/base/dd.c:1296
bus_remove_device+0x34f/0x420 drivers/base/bus.c:576
device_del+0x57a/0x9b0 drivers/base/core.c:3854
__scsi_remove_device+0x1ad/0x3c0 drivers/scsi/scsi_sysfs.c:1499
scsi_forget_host+0xcf/0x110 drivers/scsi/scsi_scan.c:2068
scsi_remove_host+0x1dd/0x770 drivers/scsi/hosts.c:181
quiesce_and_remove_host drivers/usb/storage/usb.c:949 [inline]
usb_stor_disconnect+0x14e/0x1f0 drivers/usb/storage/usb.c:1178
usb_unbind_interface+0x25d/0x940 drivers/usb/core/driver.c:458
device_remove drivers/base/dd.c:569 [inline]
__device_release_driver drivers/base/dd.c:1273 [inline]
device_release_driver_internal+0x505/0x7c0 drivers/base/dd.c:1296
bus_remove_device+0x34f/0x420 drivers/base/bus.c:576
device_del+0x57a/0x9b0 drivers/base/core.c:3854
usb_disable_device+0x3bf/0x850 drivers/usb/core/message.c:1418
usb_disconnect+0x340/0x950 drivers/usb/core/hub.c:2304
hub_port_connect drivers/usb/core/hub.c:5363 [inline]
hub_port_connect_change drivers/usb/core/hub.c:5663 [inline]
port_event drivers/usb/core/hub.c:5823 [inline]
hub_event+0x1ebc/0x5150 drivers/usb/core/hub.c:5905
process_one_work kernel/workqueue.c:3236 [inline]
process_scheduled_works+0xa68/0x1840 kernel/workqueue.c:3317
worker_thread+0x870/0xd30 kernel/workqueue.c:3398
kthread+0x2f2/0x390 kernel/kthread.c:389
ret_from_fork+0x4d/0x80 arch/x86/kernel/process.c:147
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
other info that might help us debug this:
Chain exists of:
(work_completion)(&(&wb->dwork)->work) --> &q->limits_lock --> &q->q_usage_counter(queue)#56
Possible unsafe locking scenario:
CPU0 CPU1
---- ----
lock(&q->q_usage_counter(queue)#56);
lock(&q->limits_lock);
lock(&q->q_usage_counter(queue)#56);
lock((work_completion)(&(&wb->dwork)->work));
*** DEADLOCK ***
9 locks held by kworker/0:7/5892:
#0: ffff8880212d9548 ((wq_completion)usb_hub_wq){+.+.}-{0:0}, at: process_one_work kernel/workqueue.c:3211 [inline]
#0: ffff8880212d9548 ((wq_completion)usb_hub_wq){+.+.}-{0:0}, at: process_scheduled_works+0x93b/0x1840 kernel/workqueue.c:3317
#1: ffffc90003357d00 ((work_completion)(&hub->events)){+.+.}-{0:0}, at: process_one_work kernel/workqueue.c:3212 [inline]
#1: ffffc90003357d00 ((work_completion)(&hub->events)){+.+.}-{0:0}, at: process_scheduled_works+0x976/0x1840 kernel/workqueue.c:3317
#2: ffff888028878190 (&dev->mutex){....}-{4:4}, at: device_lock include/linux/device.h:1014 [inline]
#2: ffff888028878190 (&dev->mutex){....}-{4:4}, at: hub_event+0x1fe/0x5150 drivers/usb/core/hub.c:5851
#3: ffff8880619b9190 (&dev->mutex){....}-{4:4}, at: device_lock include/linux/device.h:1014 [inline]
#3: ffff8880619b9190 (&dev->mutex){....}-{4:4}, at: usb_disconnect+0x103/0x950 drivers/usb/core/hub.c:2295
#4: ffff888020ede160 (&dev->mutex){....}-{4:4}, at: device_lock include/linux/device.h:1014 [inline]
#4: ffff888020ede160 (&dev->mutex){....}-{4:4}, at: __device_driver_lock drivers/base/dd.c:1095 [inline]
#4: ffff888020ede160 (&dev->mutex){....}-{4:4}, at: device_release_driver_internal+0xce/0x7c0 drivers/base/dd.c:1293
#5: ffff888057dfc0e0 (&shost->scan_mutex){+.+.}-{4:4}, at: scsi_remove_host+0x34/0x770 drivers/scsi/hosts.c:169
#6: ffff88801187c378 (&dev->mutex){....}-{4:4}, at: device_lock include/linux/device.h:1014 [inline]
#6: ffff88801187c378 (&dev->mutex){....}-{4:4}, at: __device_driver_lock drivers/base/dd.c:1095 [inline]
#6: ffff88801187c378 (&dev->mutex){....}-{4:4}, at: device_release_driver_internal+0xce/0x7c0 drivers/base/dd.c:1293
#7: ffff88802865a800 (&q->q_usage_counter(queue)#56){++++}-{0:0}, at: sd_remove+0x8d/0x110 drivers/scsi/sd.c:4072
#8: ffffffff8e937ae0 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire include/linux/rcupdate.h:337 [inline]
#8: ffffffff8e937ae0 (rcu_read_lock){....}-{1:3}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline]
#8: ffffffff8e937ae0 (rcu_read_lock){....}-{1:3}, at: start_flush_work kernel/workqueue.c:4148 [inline]
#8: ffffffff8e937ae0 (rcu_read_lock){....}-{1:3}, at: __flush_work+0xe9/0xc60 kernel/workqueue.c:4206
stack backtrace:
CPU: 0 UID: 0 PID: 5892 Comm: kworker/0:7 Not tainted 6.13.0-rc7-syzkaller-00043-g619f0b6fad52 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024
Workqueue: usb_hub_wq hub_event
Call Trace:
<TASK>
__dump_stack lib/dump_stack.c:94 [inline]
dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120
print_circular_bug+0x13a/0x1b0 kernel/locking/lockdep.c:2074
check_noncircular+0x36a/0x4a0 kernel/locking/lockdep.c:2206
check_prev_add kernel/locking/lockdep.c:3161 [inline]
check_prevs_add kernel/locking/lockdep.c:3280 [inline]
validate_chain+0x18ef/0x5920 kernel/locking/lockdep.c:3904
__lock_acquire+0x1397/0x2100 kernel/locking/lockdep.c:5226
lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5849
touch_work_lockdep_map kernel/workqueue.c:3920 [inline]
start_flush_work kernel/workqueue.c:4174 [inline]
__flush_work+0x739/0xc60 kernel/workqueue.c:4206
flush_work kernel/workqueue.c:4263 [inline]
flush_delayed_work+0x169/0x1c0 kernel/workqueue.c:4285
wb_shutdown+0x186/0x1e0 mm/backing-dev.c:575
bdi_unregister+0x19a/0x5d0 mm/backing-dev.c:1158
del_gendisk+0x400/0x920 block/genhd.c:707
sd_remove+0x8d/0x110 drivers/scsi/sd.c:4072
device_remove drivers/base/dd.c:569 [inline]
__device_release_driver drivers/base/dd.c:1273 [inline]
device_release_driver_internal+0x505/0x7c0 drivers/base/dd.c:1296
bus_remove_device+0x34f/0x420 drivers/base/bus.c:576
device_del+0x57a/0x9b0 drivers/base/core.c:3854
__scsi_remove_device+0x1ad/0x3c0 drivers/scsi/scsi_sysfs.c:1499
scsi_forget_host+0xcf/0x110 drivers/scsi/scsi_scan.c:2068
scsi_remove_host+0x1dd/0x770 drivers/scsi/hosts.c:181
quiesce_and_remove_host drivers/usb/storage/usb.c:949 [inline]
usb_stor_disconnect+0x14e/0x1f0 drivers/usb/storage/usb.c:1178
usb_unbind_interface+0x25d/0x940 drivers/usb/core/driver.c:458
device_remove drivers/base/dd.c:569 [inline]
__device_release_driver drivers/base/dd.c:1273 [inline]
device_release_driver_internal+0x505/0x7c0 drivers/base/dd.c:1296
bus_remove_device+0x34f/0x420 drivers/base/bus.c:576
device_del+0x57a/0x9b0 drivers/base/core.c:3854
usb_disable_device+0x3bf/0x850 drivers/usb/core/message.c:1418
usb_disconnect+0x340/0x950 drivers/usb/core/hub.c:2304
hub_port_connect drivers/usb/core/hub.c:5363 [inline]
hub_port_connect_change drivers/usb/core/hub.c:5663 [inline]
port_event drivers/usb/core/hub.c:5823 [inline]
hub_event+0x1ebc/0x5150 drivers/usb/core/hub.c:5905
process_one_work kernel/workqueue.c:3236 [inline]
process_scheduled_works+0xa68/0x1840 kernel/workqueue.c:3317
worker_thread+0x870/0xd30 kernel/workqueue.c:3398
kthread+0x2f2/0x390 kernel/kthread.c:389
ret_from_fork+0x4d/0x80 arch/x86/kernel/process.c:147
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
</TASK>
| Time | Kernel | Commit | Syzkaller | Config | Log | Report | Syz repro | C repro | VM info | Assets (help?) | Manager | Title |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2025/01/16 11:16 | upstream | 619f0b6fad52 | 968edaf4 | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-kasan-gce-root | possible deadlock in sd_remove | ||
| 2025/01/10 13:28 | upstream | 2144da25584e | 67d7ec0a | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-kasan-gce-root | possible deadlock in sd_remove | ||
| 2024/12/27 13:15 | upstream | d6ef8b40d075 | d3ccff63 | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-kasan-gce-root | possible deadlock in sd_remove | ||
| 2024/12/13 19:38 | upstream | f932fb9b4074 | 7cbfbb3a | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-kasan-badwrites-root | possible deadlock in sd_remove | ||
| 2024/12/12 11:47 | upstream | 231825b2e1ff | 941924eb | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-kasan-badwrites-root | possible deadlock in sd_remove | ||
| 2024/12/08 22:50 | upstream | 62b5a46999c7 | 9ac0fdc6 | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-kasan-badwrites-root | possible deadlock in sd_remove | ||
| 2024/12/04 16:52 | upstream | feffde684ac2 | b50eb251 | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-kasan-badwrites-root | possible deadlock in sd_remove | ||
| 2024/12/03 07:10 | upstream | cdd30ebb1b9f | 578925bc | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-kasan-badwrites-root | possible deadlock in sd_remove | ||
| 2024/11/03 16:29 | linux-next | c88416ba074a | f00eed24 | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-linux-next-kasan-gce-root | possible deadlock in sd_remove | ||
| 2024/11/02 02:22 | linux-next | c88416ba074a | f00eed24 | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-linux-next-kasan-gce-root | possible deadlock in sd_remove | ||
| 2025/02/03 04:34 | git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci | 1950a0af2d55 | 568559e4 | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-gce-arm64 | possible deadlock in sd_remove | ||
| 2025/01/02 09:02 | git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci | 573067a5a685 | d3ccff63 | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-gce-arm64 | possible deadlock in sd_remove | ||
| 2025/01/01 09:19 | git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci | 573067a5a685 | d3ccff63 | .config | console log | report | syz / log | C | [disk image] [vmlinux] [kernel image] | ci-upstream-gce-arm64 | possible deadlock in sd_remove | |
| 2025/01/01 08:25 | git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci | 573067a5a685 | d3ccff63 | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-gce-arm64 | possible deadlock in sd_remove | ||
| 2024/12/31 07:59 | git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci | 573067a5a685 | d3ccff63 | .config | console log | report | syz / log | [disk image] [vmlinux] [kernel image] | ci-upstream-gce-arm64 | possible deadlock in sd_remove | ||
| 2024/12/31 04:47 | git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci | 573067a5a685 | d3ccff63 | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-gce-arm64 | possible deadlock in sd_remove | ||
| 2024/12/28 03:14 | git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci | 573067a5a685 | d3ccff63 | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-gce-arm64 | possible deadlock in sd_remove | ||
| 2024/12/27 12:13 | git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci | 573067a5a685 | d3ccff63 | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-gce-arm64 | possible deadlock in sd_remove | ||
| 2024/12/27 09:47 | git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci | 573067a5a685 | d3ccff63 | .config | console log | report | info | [disk image] [vmlinux] [kernel image] | ci-upstream-gce-arm64 | possible deadlock in sd_remove |