[PATCH 0/9] Grow_continue() - single array.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The following series implements reshape restart from checkpoint.
It supports single array reshape.
Container operations are not fully supported (some code preparation is introduced only /fork()/).

As workaround for container operation multiple container assembly can be used.
During each assembly one array will be reshaped. mdmon switches next array metadata in to reshape state.
This information will be used during next container assembly process.

This series contains some reviewed patches that you not accept last time asn few new.

1. Calling start_reshape() I've changed, but passed flag calculation has to be a little different
   that I've  pointed in the emails (external and restart flags cannot be used together).
2. I'm resending patches for fork() and backup file check in Grow_continue().
   This is begin of support for container operations. It is somehow similar to reshape_container() idea,
   but adapted to assembly code. 
   Assembled array processing is forked. This will allow later (during detected container operation)
   to wait when mdmon set this particular array for reshape.
3. I've added fixes for imsm:
   a.Checkpoint calculation is wrong (per disk instead per array  units).
     It was visible during restart from checkpoint. Md reports it
   b.Array during reshape was marked as 'dirty'.
     This makes mdadm to start reshape from 0 on restart
4. Code for setting 'new' geometry is currently very simple. It sets new disks number only.
   I've got a little problem where to place it. You pointed sysfs_set_array() as place to do this.
   Inside sysfs_set_array() is placed a comment to set those parameters outside this function.
   I've decided to follow suggestion from comment as they seams reasonable.
   This code is narrowed to expansion case,
   but I've put 'ToDo' information in to code comments, how/where it should be changed (I hope shortly).

I think code follows direction you give me in last email (except above exclusions).

BR
Adam



---

Adam Kwolek (9):
      imsm: FIX: Variables declaration cleanup
      FIX: Block array monitoring when assembling reshaped array
      FIX: Set 'new' geometry when assembling reshaped array
      FIX: Verify Backup file name before reshape
      FIX: Continue reshape in the background
      imsm: FIX: After checkpoint mark array have to be clean
      imsm: FIX: Return blocks_per unit for general migration
      FIX: Array during reshape cannot be configured
      FIX: Do not configure and start, already started reshape


 Assemble.c    |   26 +++++++++++++++++++++++++-
 Grow.c        |   47 +++++++++++++++++++++++++++++++++++++++++------
 super-intel.c |    7 +++++--
 3 files changed, 71 insertions(+), 9 deletions(-)

-- 
Signature
--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux