linux/drivers/block/aoe
Justin Sanders fa2a79f0da aoe: clean device rq_list in aoedev_downdev()
[ Upstream commit 7f90d45e57 ]

An aoe device's rq_list contains accepted block requests that are
waiting to be transmitted to the aoe target. This queue was added as
part of the conversion to blk_mq. However, the queue was not cleaned out
when an aoe device is downed which caused blk_mq_freeze_queue() to sleep
indefinitely waiting for those requests to complete, causing a hang. This
fix cleans out the queue before calling blk_mq_freeze_queue().

Link: https://bugzilla.kernel.org/show_bug.cgi?id=212665
Fixes: 3582dd2917 ("aoe: convert aoeblk to blk-mq")
Signed-off-by: Justin Sanders <jsanders.devel@gmail.com>
Link: https://lore.kernel.org/r/20250610170600.869-1-jsanders.devel@gmail.com
Tested-By: Valentin Kleibel <valentin@vrvis.at>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
History 2025-06-27 11:11:42 +01:00
..
aoe.h aoe: Avoid flush_scheduled_work() usage 2022-05-01 06:41:41 -06:00
aoeblk.c block: move the nonrot flag to queue_limits 2024-06-19 07:58:28 -06:00
aoechr.c aoe: make aoe_class a static const structure 2023-06-21 07:45:19 -06:00
aoecmd.c block-6.12-20241004 2024-10-04 10:43:44 -07:00
aoedev.c aoe: clean device rq_list in aoedev_downdev() 2025-06-27 11:11:42 +01:00
aoemain.c aoe: Avoid flush_scheduled_work() usage 2022-05-01 06:41:41 -06:00
aoenet.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
Makefile treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00