Thread (5 messages) 5 messages, 1 author, 2011-02-23

[PATCH 0/4] Prepare assembled array for reshape (expansion)

STALE5702d

From: Adam Kwolek <hidden>
Date: 2011-02-23 13:51:31

When array with expansion in progress is being assembled, assembled array state is inactive.
If array state would be read-only, 2 things happens:
1. md starts reshape automatically (for externally controlled metadata)
2. mdmon sets array state to active.

This is not correct.

Array should meet the following criteria after assembly to be ready for reshape:

1. array should be in read-only state. Array is assembled with fewer devices 
   than stripes on array 'begin' requires. To avoid data corruption read-only state
   is required until md will be informed about reshape (reshape configuration occures also).

2. mdmon cannot push array in to active state. 
   For this reason mdmon should be temporary blocked from monitoring this array (freeze).

3. md cannot automatically start reshape when it founds reshape position different to MAX_SECTORS.
   For this reason reshape position has to be configured later (reshape_active flag is temporary cleared).

Above points are addressed by patches:
	FIX: Block monitor when starting array with reshape in progress
	FIX: Prevent reshape auto start during assembly for external metadata
	FIX: disks added beyond array should be counted during reshape

The last patch:
	TBD: continue reshape after assembling array
shows development direction.

I'm interested in your opinion about it.
In current code Grow_restart() is never called for imsm/external case.
Do you think that putting additional array configuration and Grow_restart() at pointed place is ok?


BR
Adam

---

Adam Kwolek (4):
      TBD: continue reshape after assembling array
      FIX: Block monitor when starting array with reshape in progress
      FIX: Prevent reshape auto start during assembly for external metadata
      FIX: disks added beyond array should be counted during reshape


 Assemble.c |   32 ++++++++++++++++++++++++++++----
 1 files changed, 28 insertions(+), 4 deletions(-)

-- 
Signature
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help