diff --git a/drivers/md/md.c b/drivers/md/md.c index 09042b060086..816951405f46 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c @@ -9051,6 +9051,11 @@ void md_do_sync(struct md_thread *thread) } action = md_sync_action(mddev); + if (action == ACTION_FROZEN || action == ACTION_IDLE) { + set_bit(MD_RECOVERY_INTR, &mddev->recovery); + goto skip; + } + desc = md_sync_action_name(action); mddev->last_sync_action = action;