- Updated container patch that also enables mdadm -IRs for imsm devices

This commit is contained in:
Doug Ledford 2010-04-08 20:57:35 +00:00
parent a2b3d7f053
commit 2d6de14b74
2 changed files with 27 additions and 6 deletions

View File

@ -1,10 +1,10 @@
commit 3f45610e6b9e2419f09f7f1b415170b6128d91ad commit b775cd39c498b0db4ca9f94bcc8615f59e534c7d
Author: Doug Ledford <dledford@redhat.com> Author: Doug Ledford <dledford@redhat.com>
Date: Thu Apr 8 12:39:03 2010 -0400 Date: Thu Apr 8 16:56:02 2010 -0400
Make Incremental container assembly behave like native array assembly Make Incremental container assembly behave like native array assembly
Signed-off-by: Doug Ledford <dledford@redhat.com>:4000 Signed-off-by: Doug Ledford <dledford@redhat.com>
diff --git a/Assemble.c b/Assemble.c diff --git a/Assemble.c b/Assemble.c
index 1504f1f..d059155 100644 index 1504f1f..d059155 100644
@ -24,7 +24,7 @@ index 1504f1f..d059155 100644
switch(content->array.level) { switch(content->array.level) {
diff --git a/Incremental.c b/Incremental.c diff --git a/Incremental.c b/Incremental.c
index d32a8e5..2a2df82 100644 index d32a8e5..9d77d4d 100644
--- a/Incremental.c --- a/Incremental.c
+++ b/Incremental.c +++ b/Incremental.c
@@ -424,20 +424,21 @@ int Incremental(char *devname, int verbose, int runstop, @@ -424,20 +424,21 @@ int Incremental(char *devname, int verbose, int runstop,
@ -45,7 +45,7 @@ index d32a8e5..2a2df82 100644
- if (rv == 1) - if (rv == 1)
- /* Don't fail the whole -I if a subarray didn't - /* Don't fail the whole -I if a subarray didn't
- * have enough devices to start yet - * have enough devices to start yet
+ if (runstop == 1 || + if (runstop > 0 ||
+ info.array.working_disks == info.array.raid_disks) + info.array.working_disks == info.array.raid_disks)
+ /* The return value of our container assembly doesn't + /* The return value of our container assembly doesn't
+ * depend on whether or not subarrays assembled + * depend on whether or not subarrays assembled
@ -60,6 +60,24 @@ index d32a8e5..2a2df82 100644
} }
avail = NULL; avail = NULL;
active_disks = count_active(st, mdfd, &avail, &info); active_disks = count_active(st, mdfd, &avail, &info);
@@ -666,6 +667,17 @@ int IncrementalScan(int verbose)
if (mdfd < 0)
continue;
+ if (strcmp("imsm",me->metadata) == 0) {
+ /*
+ * Just do a blind incremental assembly on the
+ * container. If there's anything to be started,
+ * we will, if it's already started, we'll silently
+ * exit, if there's a problem, incremental will
+ * catch it.
+ */
+ Incremental(me->path, verbose, 1, NULL, "<any>", 0, 1);
+ continue;
+ }
if (ioctl(mdfd, GET_ARRAY_INFO, &array) == 0 ||
errno != ENODEV) {
close(mdfd);
diff --git a/super-intel.c b/super-intel.c diff --git a/super-intel.c b/super-intel.c
index 999b970..7bcfcdb 100644 index 999b970..7bcfcdb 100644
--- a/super-intel.c --- a/super-intel.c

View File

@ -1,7 +1,7 @@
Summary: The mdadm program controls Linux md devices (software RAID arrays) Summary: The mdadm program controls Linux md devices (software RAID arrays)
Name: mdadm Name: mdadm
Version: 3.1.2 Version: 3.1.2
Release: 7%{?dist} Release: 8%{?dist}
Source: http://www.kernel.org/pub/linux/utils/raid/mdadm/mdadm-%{version}.tar.bz2 Source: http://www.kernel.org/pub/linux/utils/raid/mdadm/mdadm-%{version}.tar.bz2
Source1: mdmonitor.init Source1: mdmonitor.init
Source2: raid-check Source2: raid-check
@ -95,6 +95,9 @@ fi
%attr(0700,root,root) %dir /var/run/mdadm %attr(0700,root,root) %dir /var/run/mdadm
%changelog %changelog
* Thu Apr 08 2010 Doug Ledford <dledford@redhat.com> - 3.1.2-8
- Updated container patch that also enables mdadm -IRs for imsm devices
* Tue Apr 06 2010 Doug Ledford <dledford@redhat.com> - 3.1.2-7 * Tue Apr 06 2010 Doug Ledford <dledford@redhat.com> - 3.1.2-7
- Fix up directory in mdmonitor init script so that we restart mdmon like we - Fix up directory in mdmonitor init script so that we restart mdmon like we
are supposed to are supposed to