diff options
author | Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com> | 2021-07-21 17:47:54 +0200 |
---|---|---|
committer | Jes Sorensen <jsorensen@fb.com> | 2021-07-27 23:35:33 +0200 |
commit | 92a647c8a0ea26697967174fe24bc5cc47ce8f30 (patch) | |
tree | a87b6ed5f7e58b381e5d918b5eabb0a747f6103f /mdadm.8.in | |
parent | imsm: fix num_data_stripes after raid0 takeover (diff) | |
download | mdadm-92a647c8a0ea26697967174fe24bc5cc47ce8f30.tar.xz mdadm-92a647c8a0ea26697967174fe24bc5cc47ce8f30.zip |
Assemble: start dirty and degraded array.
The case when array is already degraded has been omitted
by commit 7b99edab2834 ("Assemble.c: respect force flag.").
Appropriative support has been added now.
Handlers for "run" and "force" have been divided into independent
routines. Especially force has to be as meaningless as possible.
It respects following rules:
- user agrees to start array as degraded (by --run) or is already
degraded
- raid456 module is in use
- some drives are missing (to limit potential abuses)
It doesn't allow to skip resync on dirty, but not degraded array.
This patch cleans up message generation for external array and makes it
consistent. Following code could be reused also for native.
In current implementation assemble_container_content is called once, in
both Incremental or Assembly mode. Thus makes that partial assembly is
not likely to happen. It is possible, but requires user input.
Partial assembly during reshape fails (sysfs_set_array
error - not yet investigated). For now I put FIXME to mark current
logic as known to be buggy because preexist_cnt contains both exp_cnt
and new_cnt which may produce an incorrect message.
Check for new disks and runstop is unnecessary, so has been removed.
This allows to print assemble status in every case, even if nothing new
happens.
Reported-by: Devon Beets <devon@sigmalabsinc.com>
Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
Signed-off-by: Jes Sorensen <jsorensen@fb.com>
Diffstat (limited to 'mdadm.8.in')
-rw-r--r-- | mdadm.8.in | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -1132,7 +1132,8 @@ out-of-date. If .I mdadm cannot find enough working devices to start the array, but can find some devices that are recorded as having failed, then it will mark -those devices as working so that the array can be started. +those devices as working so that the array can be started. This works only for +native. For external metadata it allows to start dirty degraded RAID 4, 5, 6. An array which requires .B \-\-force to be started may contain data corruption. Use it carefully. |