diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-07-04 11:36:50 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-07-04 11:36:50 -0700 |
commit | 697a067f1ec67f2f8dfafd0a1b95a46997a11f32 (patch) | |
tree | 7f0f4bc39ee00944fdc45fd447a0527f77a9582a /drivers/md/md.h | |
parent | e61aca5158a84932cf9fbbcbf8aef9cef63f5026 (diff) | |
parent | 1376512065b23f39d5f9a160948f313397dde972 (diff) | |
download | kernel_replicant_linux-697a067f1ec67f2f8dfafd0a1b95a46997a11f32.tar.gz kernel_replicant_linux-697a067f1ec67f2f8dfafd0a1b95a46997a11f32.tar.bz2 kernel_replicant_linux-697a067f1ec67f2f8dfafd0a1b95a46997a11f32.zip |
Merge tag 'md-3.11' of git://neil.brown.name/md
Pull md updates from NeilBrown:
"Mostly fixes, with a few minor features (eg 'last_sync_action' sysfs
file)
A couple marked for -stable including one recent bug which causes a
RAID10 reshape to complete without moving any data :-(
A couple more bugfixes (at least) to come, but haven't confirmed the
right solution yet."
* tag 'md-3.11' of git://neil.brown.name/md:
md/raid10: fix bug which causes all RAID10 reshapes to move no data.
md/raid5: allow 5-device RAID6 to be reshaped to 4-device.
md/raid10: fix two bugs affecting RAID10 reshape.
md: remove doubled description for sync_max, merging it within sync_min/sync_max
MD: Remember the last sync operation that was performed
md: fix buglet in RAID5 -> RAID0 conversion.
md/raid10: check In_sync flag in 'enough()'.
md/raid10: locking changes for 'enough()'.
md: replace strict_strto*() with kstrto*()
md: Wait for md_check_recovery before attempting device removal.
dm-raid: silence compiler warning on rebuilds_per_group.
DM RAID: Fix raid_resume not reviving failed devices in all cases
DM RAID: Break-up untidy function
DM RAID: Add ability to restore transiently failed devices on resume
Diffstat (limited to 'drivers/md/md.h')
-rw-r--r-- | drivers/md/md.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/md/md.h b/drivers/md/md.h index 653f992b687a..20f02c0b5f2d 100644 --- a/drivers/md/md.h +++ b/drivers/md/md.h @@ -268,6 +268,14 @@ struct mddev { struct md_thread *thread; /* management thread */ struct md_thread *sync_thread; /* doing resync or reconstruct */ + + /* 'last_sync_action' is initialized to "none". It is set when a + * sync operation (i.e "data-check", "requested-resync", "resync", + * "recovery", or "reshape") is started. It holds this value even + * when the sync thread is "frozen" (interrupted) or "idle" (stopped + * or finished). It is overwritten when a new sync operation is begun. + */ + char *last_sync_action; sector_t curr_resync; /* last block scheduled */ /* As resync requests can complete out of order, we cannot easily track * how much resync has been completed. So we occasionally pause until |