From: Yu Kuai Date: Tue, 10 Oct 2023 15:19:42 +0000 (+0800) Subject: md: replace is_md_suspended() with 'mddev->suspended' in md_check_recovery() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=2e82248b70f48a98f3720cdaa8ea7a4e7f8bd760;p=linux.git md: replace is_md_suspended() with 'mddev->suspended' in md_check_recovery() Prepare to cleanup pers->prepare_suspend(), which is used to fix a deadlock in raid456 by returning error for io that is waiting for reshape to make progress in mddev_suspend(). This change will allow reshape to make progress while waiting for io to be done in mddev_suspend() in following patches. Signed-off-by: Yu Kuai Signed-off-by: Song Liu Link: https://lore.kernel.org/r/20231010151958.145896-4-yukuai1@huaweicloud.com --- diff --git a/drivers/md/md.c b/drivers/md/md.c index 930bcabeec79a..cf929c42cdbe3 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c @@ -9418,7 +9418,7 @@ void md_check_recovery(struct mddev *mddev) wake_up(&mddev->sb_wait); } - if (is_md_suspended(mddev)) + if (READ_ONCE(mddev->suspended)) return; if (mddev->bitmap)