diff options
author | Dan Williams <dan.j.williams@intel.com> | 2010-05-14 17:42:49 -0700 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2010-05-14 17:42:49 -0700 |
commit | 484240d8a3facde992009efd81bfa4cc0c79287d (patch) | |
tree | e8caef63af97a57817ab331256528f0836737ea3 /managemon.c | |
parent | 63b4aae33ebf00d443378daf313622630f2336c0 (diff) | |
download | mdadm-484240d8a3facde992009efd81bfa4cc0c79287d.tar.gz |
mdmon: periodically checkpoint recovery
The kernel updates and notifies md/sync_completed when it is time to
take a checkpoint. When this occurs (at 1/16 array size intervals)
write 'idle' to md/sync_action to have the current recovery position
updated in recovery_start and resync_start.
Requires the metadata handler to reset ->last_checkpoint when it has
determined that recovery has ended.
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'managemon.c')
-rw-r--r-- | managemon.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/managemon.c b/managemon.c index 454c39dc..d5ba6d6d 100644 --- a/managemon.c +++ b/managemon.c @@ -540,6 +540,7 @@ static void manage_new(struct mdstat_ent *mdstat, new->info.state_fd = sysfs_open(new->devnum, NULL, "array_state"); new->resync_start_fd = sysfs_open(new->devnum, NULL, "resync_start"); new->metadata_fd = sysfs_open(new->devnum, NULL, "metadata_version"); + new->sync_completed_fd = sysfs_open(new->devnum, NULL, "sync_completed"); dprintf("%s: inst: %d action: %d state: %d\n", __func__, atoi(inst), new->action_fd, new->info.state_fd); |