linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Dan Williams <dan.j.williams@intel.com>
To: "Czarnowska, Anna" <anna.czarnowska@intel.com>
Cc: Neil Brown <neilb@suse.de>,
	"linux-raid@vger.kernel.org" <linux-raid@vger.kernel.org>,
	"Neubauer, Wojciech" <Wojciech.Neubauer@intel.com>,
	"Ciechanowski, Ed" <ed.ciechanowski@intel.com>,
	"Labun, Marcin" <Marcin.Labun@intel.com>,
	"Hawrylewicz Czarnowski,
	Przemyslaw" <przemyslaw.hawrylewicz.czarnowski@intel.com>
Subject: Re: [PATCH 13/17] Monitor: autorebuild functionality added
Date: Thu, 04 Nov 2010 22:58:22 -0700	[thread overview]
Message-ID: <4CD39CFE.506@intel.com> (raw)
In-Reply-To: <A9DE54D0CD747C4CB06DCE5B6FA2246F010BAF0FD0@irsmsx504.ger.corp.intel.com>

On 10/29/2010 7:25 AM, Czarnowska, Anna wrote:
>  From 43c50f74689943e85913db343b33a0ff24812721 Mon Sep 17 00:00:00 2001
> From: Anna Czarnowska<anna.czarnowska@intel.com>
> Date: Thu, 28 Oct 2010 13:20:21 +0200
> Subject: [PATCH 13/17] Monitor: autorebuild functionality added
>
> After all information on arrays is updated we first move spares
> using spare-group information from config file, then link containers with
> subarrays and call spare_sharing. Arrays with defined spare-groups
> are not considered again. spare_sharing searches for suitable spares
> in other arrays and moves them using move_spare to the arrays
> that need them. move_spare removes spare from one array/container
> and adds to another. If add fails we add back to original container.
> Manage_subdevs function is used to perform the spare relocation.
>
> Signed-off-by: Anna Czarnowska<anna.czarnowska@intel.com>
> Signed-off-by: Marcin Labun<marcin.labun@intel.com>
> ---
>   Monitor.c |  299 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
>   1 files changed, 294 insertions(+), 5 deletions(-)

Looks good, only a couple of future enhancements.

A ddf array may be able to fix up a degraded array with free space on 
another array member.  So we may need to ensure that mdmon has had a 
chance to perform the search before we grab a free spare from another 
container.

> +static struct supertype *get_super(struct state *st)
> +{
> +	struct supertype *super = NULL;
> +	char *metadata = NULL;
> +	int i;
> +
> +	if (is_external(st->metadata_version)) {
> +		st = st->parent;
> +		if (!st)
> +			return NULL;
> +		metadata = st->metadata_version + strlen("external:");
> +	} else {
> +		metadata = st->metadata_version;
> +	}
> +	for (i = 0; !super&&  superlist[i]; i++)
> +		super = superlist[i]->match_metadata_desc(metadata);

This looks like an open-coded version_to_superswitch()

      reply	other threads:[~2010-11-05  5:58 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-10-29 14:25 [PATCH 13/17] Monitor: autorebuild functionality added Czarnowska, Anna
2010-11-05  5:58 ` Dan Williams [this message]

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=4CD39CFE.506@intel.com \
    --to=dan.j.williams@intel.com \
    --cc=Marcin.Labun@intel.com \
    --cc=Wojciech.Neubauer@intel.com \
    --cc=anna.czarnowska@intel.com \
    --cc=ed.ciechanowski@intel.com \
    --cc=linux-raid@vger.kernel.org \
    --cc=neilb@suse.de \
    --cc=przemyslaw.hawrylewicz.czarnowski@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).