linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: NeilBrown <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, wojciech.neubauer@intel.com
Subject: Re: [PATCH 12/13] FIX: parity disks use for redundant levels only
Date: Wed, 12 Jan 2011 15:59:53 +1100	[thread overview]
Message-ID: <20110112155953.3dd620df@notabene.brown> (raw)
In-Reply-To: <20110110112904.10776.88816.stgit@gklab-128-013.igk.intel.com>

On Mon, 10 Jan 2011 12:29:04 +0100 Adam Kwolek <adam.kwolek@intel.com> wrote:

> For raid0 reshape spares should not be increased by parity disk.
> 
> Signed-off-by: Adam Kwolek <adam.kwolek@intel.com>
> ---
> 
>  Grow.c |    4 +++-
>  1 files changed, 3 insertions(+), 1 deletions(-)
> 
> diff --git a/Grow.c b/Grow.c
> index 74ec429..9d31087 100644
> --- a/Grow.c
> +++ b/Grow.c
> @@ -1637,7 +1637,9 @@ static int reshape_array(char *container, int fd, char *devname,
>  	}
>  	spares_needed = max(reshape.before.data_disks,
>  			    reshape.after.data_disks)
> -		+ reshape.parity - array.raid_disks;
> +			    - array.raid_disks;
> +	if (info->array.level != 0)
> +		spares_needed += reshape.parity;
>  
>  	if (!force && spares_needed < info->array.spare_disks) {
>  		fprintf(stderr,

Thanks.
I have fixed this issue differently, as follows.

NeilBrown

commit 88c1a083919b53b2e6b4ca71d17e86a26d6e4b8b
Author: NeilBrown <neilb@suse.de>
Date:   Wed Jan 12 15:59:24 2011 +1100

    Don't complain about missing spares when reshaping a raid0.
    
    To reshape a RAID0 we convert to RAID4 first.  This makes it look
    like it could be degraded and so we are tempted to ensure there are
    enough spares.  However this is not appropriate for RAID0, so
    explicitly exclude new_level == RAID0 in this check
    
    Reported-by: Adam Kwolek <adam.kwolek@intel.com>
    Signed-off-by: NeilBrown <neilb@suse.de>

diff --git a/Grow.c b/Grow.c
index 9edd4c7..109b0c1 100644
--- a/Grow.c
+++ b/Grow.c
@@ -1613,7 +1613,9 @@ static int reshape_array(char *container, int fd, char *devname,
 			    reshape.after.data_disks)
 		+ reshape.parity - array.raid_disks;
 
-	if (!force && spares_needed > info->array.spare_disks) {
+	if (!force &&
+	    info->new_level > 0 &&
+	    spares_needed > info->array.spare_disks) {
 		fprintf(stderr,
 			Name ": Need %d spare%s to avoid degraded array,"
 			" and only have %d.\n"

  reply	other threads:[~2011-01-12  4:59 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-10 11:27 [PATCH 00/13] OLCE for external meta Raid5/single array Adam Kwolek
2011-01-10 11:27 ` [PATCH 01/13] Manage reshape process in manage_reshape vector Adam Kwolek
2011-01-12  3:51   ` NeilBrown
2011-01-10 11:27 ` [PATCH 02/13] imsm: FIX: allow for container reshape any unset size value Adam Kwolek
2011-01-12  3:52   ` NeilBrown
2011-01-12  8:32     ` Kwolek, Adam
2011-01-12 10:43       ` NeilBrown
2011-01-10 11:27 ` [PATCH 03/13] imsm: FIX: when monitor is active post update Adam Kwolek
2011-01-12  3:56   ` NeilBrown
2011-01-10 11:27 ` [PATCH 04/13] FIX: load anchor to get all information Adam Kwolek
2011-01-12  3:58   ` NeilBrown
2011-01-10 11:28 ` [PATCH 05/13] msm: FIX: when mdadm reloads anchor not need for local modyfication Adam Kwolek
2011-01-10 11:28 ` [PATCH 06/13] imsm: FIX: update disks status in container_contents() Adam Kwolek
2011-01-12  4:14   ` NeilBrown
2011-01-10 11:28 ` [PATCH 07/13] FIX: wrong flags are passed to function Adam Kwolek
2011-01-10 11:28 ` [PATCH 08/13] FIX/WORKAROUND: added disks are not used by reshape process /md/ Adam Kwolek
2011-01-12  4:39   ` NeilBrown
2011-01-10 11:28 ` [PATCH 09/13] Finalize reshape after adding disks to array Adam Kwolek
2011-01-12  4:52   ` NeilBrown
2011-01-10 11:28 ` [PATCH 10/13] FIX: Cannot unmount array after reshape Adam Kwolek
2011-01-12  4:53   ` NeilBrown
2011-01-12 15:12     ` Kwolek, Adam
2011-01-10 11:28 ` [PATCH 11/13] FIX/WORKAROUND: Arrays cannot be opened exclusively Adam Kwolek
2011-01-10 11:29 ` [PATCH 12/13] FIX: parity disks use for redundant levels only Adam Kwolek
2011-01-12  4:59   ` NeilBrown [this message]
2011-01-10 11:29 ` [PATCH 13/13] FIX: Fill sys_name for disk add Adam Kwolek
2011-01-12  5:02   ` NeilBrown

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=20110112155953.3dd620df@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 \
    --cc=wojciech.neubauer@intel.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).