All of lore.kernel.org
 help / color / mirror / Atom feed
From: Neil Brown <neilb@suse.de>
To: Adam Kwolek <adam.kwolek@intel.com>
Cc: linux-raid@vger.kernel.org, dan.j.williams@intel.com,
	ed.ciechanowski@intel.com
Subject: Re: [PATCH 00/21] Series short description
Date: Wed, 24 Nov 2010 16:04:48 +1100	[thread overview]
Message-ID: <20101124160448.78d53972@notabene.brown> (raw)
In-Reply-To: <20101123123900.17770.75516.stgit@gklab-170-024.igk.intel.com>

On Tue, 23 Nov 2010 13:39:38 +0100
Adam Kwolek <adam.kwolek@intel.com> wrote:

> This patch series bases on previously sent patch series: array/container freezing by Dan Williams, and my and Maciej Trela's patches for OLCE and check pointing for external metadata.
> This patch series implements:
> 1. Patches 0001 to 0018 : fixes for freezing, OLCE and check pointing
> 2. Patches 0018 to 0021 : implements new migration features for external metadata:
>     - Migration raid0 to raid5
>     - Migration raid5 to raid0
>     - Chunk size migration

I'm afraid this series isn't much use to me.

It appears to be intended to apply after the previous set of 31 patches you
posted.  However I haven't applied any of those.  I responded to the first 6
explaining why each was either wrong, unacceptable, or not explained well
enough for me to review it properly, and I just stopped at 6.

So for example,
   [PATCH 04/21] FIX: Use MDADM_EXPERIMENTAL environment variable
is of no use to me as I never applied the patch that it tried to fix.
I could probably pick out the  patches that can still apply, but I'd rather
not have to.

Please send a set of patches against my devel-3.6 branch with any 'fixes' to
your own patches already merged back into those patches.
Then I will apply as much as I can, and explain was is need to make any other
acceptable.

Thanks,

NeilBrown


> 
> We are planning in the few days add fixes for raid10 <-> raid0 takeover also.
> 
> Migration feature reuses code flow introduced for OLCE (Online Capacity Expansion) and uses the same grow/reshape flow in mdadm/mdmon.
> Migration is executed in the following way:
> 1. mdadm: reshape_super() prepares metadata update and sends it to mdmon
> 2. mdadm: waits for reshape array state
> 3. monitor: receives metadata update and applies it.
> 4. monitor: metadata update triggers managemon.
> 5. managemon: updates array (md) configuration and starts reshape
> 6. mdadm: finds that reshape is started and continues it using check pointing
> 7. mdadm: reshape is finished and manage_reshape() finalizes array:
>     - Sets array size as is given in metadata
>     - Performs takeover to raid0 if necessary
> 
> In current patches placement of manage_reshape() function call was changed.
> It is moved to end of array processing to use common code form Grow.c for external metadata reshape case
> (we do not need to duplicate existing code) as it would do the same things as code for native metadata.
> New manage_reshape() placement causes a few things to do in implementation only and simplifees code.
> 
> Migrations command line:
> 1. Execute migration raid0->raid5:
>     mdadm  - -grow /dev/md/array_name -level 5 -layout=left-asymmetric
> 
>     This converts n-disks raid0 array to (n+1)-disks raid5 array. Additional raid5 array disk is user from spares pool
> 
> 2. Execute migration raid5->raid0:
>     mdadm  - -grow /dev/md/array_name -level 0
> 
>     This converts n-disks raid5 array to n-disks raid0 array.
> 3. Execute chunk size migration
>     mdadm  - -grow /dev/md/array_name -chunk N
> 
>     where N is ne chunk size value
> 
> In current patch series testing of 'experimental' flag was changes according to Neil's suggestion, as I've found it useable for my testing purposes.
> The rest of comments to already reviewed patches (OLCE/check pointing) will be implemented in next step.
> 
> 
> ---
> 
> Adam Kwolek (21):
>       Migration: Chunk size migration
>       Migration raid0->raid5
>       Migration: raid5->raid0
>       imsm: Use geo structure
>       Change manage_reshape() placement
>       FIX: Start mdmon after changing level
>       FIX: Checkpointing: Enable checkpointing for non-growing migrations
>       FIX: Level field can be NULL
>       imsm Fix: Core during rebuild on array details read
>       WORKAROUND: md reports idle state during reshape start
>       FIX: Honor !reshape state on wait_reshape() entry
>       FIX: Unfreeze not only container for external metadata
>       FIX: Cannot exit monitor after takeover
>       imsm: FIX: Continue expansion after -As command
>       imsm: FIX: Reshape Cancel message on 2nd array doesn't work correctly
>       imsm: FIX: Guard size setting
>       FIX: Allow for reshape without backup file
>       FIX: Use MDADM_EXPERIMENTAL environment variable
>       imsm: FIX: imsm_check_reshape_conditions change ret_val
>       imsm: Change some debug output information
>       imsm: Remove unnecessary code
> 
> 
>  mdadm/mdadm/Detail.c      |    1 
>  mdadm/mdadm/Grow.c        |  178 ++++++++----
>  mdadm/mdadm/Makefile      |    6 
>  mdadm/mdadm/managemon.c   |  113 ++++++-
>  mdadm/mdadm/mdadm.h       |    7 
>  mdadm/mdadm/mdmon.h       |    4 
>  mdadm/mdadm/mdstat.c      |    2 
>  mdadm/mdadm/monitor.c     |   11 +
>  mdadm/mdadm/msg.c         |    5 
>  mdadm/mdadm/restripe.c    |    1 
>  mdadm/mdadm/super-intel.c |  693 +++++++++++++++++++++++++++++++++------------
>  mdadm/mdadm/util.c        |   88 +++++-
>  12 files changed, 830 insertions(+), 279 deletions(-)
> 


  parent reply	other threads:[~2010-11-24  5:04 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-11-23 12:39 [PATCH 00/21] Series short description Adam Kwolek
2010-11-23 12:39 ` [PATCH 01/21] imsm: Remove unnecessary code Adam Kwolek
2010-11-23 12:39 ` [PATCH 02/21] imsm: Change some debug output information Adam Kwolek
2010-11-23 12:40 ` [PATCH 03/21] imsm: FIX: imsm_check_reshape_conditions change ret_val Adam Kwolek
2010-11-23 12:40 ` [PATCH 04/21] FIX: Use MDADM_EXPERIMENTAL environment variable Adam Kwolek
2010-11-23 12:40 ` [PATCH 05/21] FIX: Allow for reshape without backup file Adam Kwolek
2010-11-23 12:40 ` [PATCH 06/21] imsm: FIX: Guard size setting Adam Kwolek
2010-11-23 12:40 ` [PATCH 07/21] imsm: FIX: Reshape Cancel message on 2nd array doesn't work correctly Adam Kwolek
2010-11-23 12:40 ` [PATCH 08/21] imsm: FIX: Continue expansion after -As command Adam Kwolek
2010-11-23 12:40 ` [PATCH 09/21] FIX: Cannot exit monitor after takeover Adam Kwolek
2010-11-23 12:40 ` [PATCH 10/21] FIX: Unfreeze not only container for external metadata Adam Kwolek
2010-11-23 12:41 ` [PATCH 11/21] FIX: Honor !reshape state on wait_reshape() entry Adam Kwolek
2010-11-23 12:41 ` [PATCH 12/21] WORKAROUND: md reports idle state during reshape start Adam Kwolek
2010-11-23 12:41 ` [PATCH 13/21] imsm Fix: Core during rebuild on array details read Adam Kwolek
2010-11-23 12:41 ` [PATCH 14/21] FIX: Level field can be NULL Adam Kwolek
2010-11-23 12:41 ` [PATCH 15/21] FIX: Checkpointing: Enable checkpointing for non-growing migrations Adam Kwolek
2010-11-23 12:41 ` [PATCH 16/21] FIX: Start mdmon after changing level Adam Kwolek
2010-11-23 12:41 ` [PATCH 17/21] Change manage_reshape() placement Adam Kwolek
2010-11-23 12:42 ` [PATCH 18/21] imsm: Use geo structure Adam Kwolek
2010-11-23 12:42 ` [PATCH 19/21] Migration: raid5->raid0 Adam Kwolek
2010-11-23 12:42 ` [PATCH 20/21] Migration raid0->raid5 Adam Kwolek
2010-11-23 12:42 ` [PATCH 21/21] Migration: Chunk size migration Adam Kwolek
2010-11-24  5:04 ` Neil Brown [this message]
  -- strict thread matches above, loose matches on Subject: below --
2006-06-21 14:23 [PATCH 00/21] Series short description Pierre Ossman
2006-06-27 19:06 ` Pierre Ossman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20101124160448.78d53972@notabene.brown \
    --to=neilb@suse.de \
    --cc=adam.kwolek@intel.com \
    --cc=dan.j.williams@intel.com \
    --cc=ed.ciechanowski@intel.com \
    --cc=linux-raid@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.