2
0
mirror of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git synced 2025-09-04 20:19:47 +08:00

md: rearrange recovery_flags

Currently there are lots of flags with the same confusing prefix
"MD_REOCVERY_", and there are two main types of flags, sync thread runnng
status, I prefer prefix "SYNC_THREAD_", and sync thread action, I perfer
prefix "SYNC_ACTION_".

For now, rearrange and update comment to improve code readability,
there are no functional changes.

Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Signed-off-by: Song Liu <song@kernel.org>
Link: https://lore.kernel.org/r/20240611132251.1967786-2-yukuai1@huaweicloud.com
This commit is contained in:
Yu Kuai 2024-06-11 21:22:40 +08:00 committed by Song Liu
parent ab99a87542
commit 0476d09c36

View File

@ -551,22 +551,46 @@ struct mddev {
}; };
enum recovery_flags { enum recovery_flags {
/* flags for sync thread running status */
/* /*
* If neither SYNC or RESHAPE are set, then it is a recovery. * set when one of sync action is set and new sync thread need to be
* registered, or just add/remove spares from conf.
*/ */
MD_RECOVERY_RUNNING, /* a thread is running, or about to be started */ MD_RECOVERY_NEEDED,
MD_RECOVERY_SYNC, /* actually doing a resync, not a recovery */ /* sync thread is running, or about to be started */
MD_RECOVERY_RECOVER, /* doing recovery, or need to try it. */ MD_RECOVERY_RUNNING,
MD_RECOVERY_INTR, /* resync needs to be aborted for some reason */ /* sync thread needs to be aborted for some reason */
MD_RECOVERY_DONE, /* thread is done and is waiting to be reaped */ MD_RECOVERY_INTR,
MD_RECOVERY_NEEDED, /* we might need to start a resync/recover */ /* sync thread is done and is waiting to be unregistered */
MD_RECOVERY_REQUESTED, /* user-space has requested a sync (used with SYNC) */ MD_RECOVERY_DONE,
MD_RECOVERY_CHECK, /* user-space request for check-only, no repair */ /* running sync thread must abort immediately, and not restart */
MD_RECOVERY_RESHAPE, /* A reshape is happening */ MD_RECOVERY_FROZEN,
MD_RECOVERY_FROZEN, /* User request to abort, and not restart, any action */ /* waiting for pers->start() to finish */
MD_RECOVERY_ERROR, /* sync-action interrupted because io-error */ MD_RECOVERY_WAIT,
MD_RECOVERY_WAIT, /* waiting for pers->start() to finish */ /* interrupted because io-error */
MD_RESYNCING_REMOTE, /* remote node is running resync thread */ MD_RECOVERY_ERROR,
/* flags determines sync action */
/* if just this flag is set, action is resync. */
MD_RECOVERY_SYNC,
/*
* paired with MD_RECOVERY_SYNC, if MD_RECOVERY_CHECK is not set,
* action is repair, means user requested resync.
*/
MD_RECOVERY_REQUESTED,
/*
* paired with MD_RECOVERY_SYNC and MD_RECOVERY_REQUESTED, action is
* check.
*/
MD_RECOVERY_CHECK,
/* recovery, or need to try it */
MD_RECOVERY_RECOVER,
/* reshape */
MD_RECOVERY_RESHAPE,
/* remote node is running resync thread */
MD_RESYNCING_REMOTE,
}; };
enum md_ro_state { enum md_ro_state {