summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ANNOUNCE-3.0-devel3113
-rw-r--r--ReadMe.c2
-rwxr-xr-xinventory10
-rwxr-xr-xmakedist7
-rw-r--r--mdadm.82
-rw-r--r--mdadm.spec2
-rw-r--r--mdassemble.82
-rw-r--r--mdmon.82
-rw-r--r--super-intel.c2
9 files changed, 135 insertions, 7 deletions
diff --git a/ANNOUNCE-3.0-devel3 b/ANNOUNCE-3.0-devel3
new file mode 100644
index 0000000..078be07
--- /dev/null
+++ b/ANNOUNCE-3.0-devel3
@@ -0,0 +1,113 @@
+Subject: ANNOUNCE: mdadm 3.0-devel3 - A tool for managing Soft RAID under Linux
+
+I am pleased to announce the availability of
+ mdadm version 3.0-devel3
+
+It is available at the usual places:
+ countrycode=xx.
+ http://www.${countrycode}kernel.org/pub/linux/utils/raid/mdadm/
+and via git at
+ git://neil.brown.name/mdadm
+ http://neil.brown.name/git?p=mdadm
+
+Note that this is a "devel" release. It should be used with
+caution, though it is believed to be close to release-candidate stage.
+
+There have been numerous improvements and additions since -devel2.
+I think we are close to a release of 3.0.
+
+I need to add lots of tests to the test suite to test the new
+functionality. And I need to review the man pages.
+
+After that I will release -rc1 followed by -final.
+
+
+The following is the same introduction to 3.x as appeared in
+previous announcements.
+
+
+Any testing and feedback will be greatly appreciated.
+
+NeilBrown 10th March 2009
+
+
+=====================================================
+
+The significant change which justifies the new major version number is
+that mdadm can now handle metadata updates entirely in userspace.
+This allows mdadm to support metadata formats that the kernel knows
+nothing about.
+
+Currently two such metadata formats are supported:
+ - DDF - The SNIA standard format
+ - Intel Matrix - The metadata used by recent Intel ICH controlers.
+
+Also the approach to device names has changed significantly.
+
+If udev is installed on the system, mdadm will not create any devices
+in /dev. Rather it allows udev to manage those devices. For this to work
+as expected, the included udev rules file should be installed.
+
+If udev is not install, mdadm will still create devices and symlinks
+as required, and will also remove them when the array is stopped.
+
+mdadm now requires all devices which do not have a standard name (mdX
+or md_dX) to live in the directory /dev/md/. Names in this directory
+will always be created as symlinks back to the standard name in /dev.
+
+The man pages contain some information about the new externally managed
+metadata. However see below for a more condensed overview.
+
+Externally managed metadata introduces the concept of a 'container'.
+A container is a collection of (normally) physical devices which have
+a common set of metadata. A container is assembled as an md array, but
+is left 'inactive'.
+
+A container can contain one or more data arrays. These are composed from
+slices (partitions?) of various devices in the container.
+
+For example, a 5 devices DDF set can container a RAID1 using the first
+half of two devices, a RAID0 using the first half of the remain 3 devices,
+and a RAID5 over thte second half of all 5 devices.
+
+A container can be created with
+
+ mdadm --create /dev/md0 -e ddf -n5 /dev/sd[abcde]
+
+or "-e imsm" to use the Intel Matrix Storage Manager.
+
+An array can be created within a container either by giving the
+container name and the only member:
+
+ mdadm -C /dev/md1 --level raid1 -n 2 /dev/md0
+
+or by listing the component devices
+
+ mdadm -C /dev/md2 --level raid0 -n 3 /dev/sd[cde]
+
+To assemble a container, it is easiest just to pass each device in turn to
+mdadm -I
+
+ for i in /dev/sd[abcde]
+ do mdadm -I $i
+ done
+
+This will assemble the container and the components.
+
+Alternately the container can be assembled explicitly
+
+ mdadm -A /dev/md0 /dev/sd[abcde]
+
+Then the components can all be assembled with
+
+ mdadm -I /dev/md0
+
+For each container, mdadm will start a program called "mdmon" which will
+monitor the array and effect any metadata updates needed. The array is
+initially assembled readonly. It is up to "mdmon" to mark the metadata
+as 'dirty' and which the array to 'read-write'.
+
+The version 0.90 and 1.x metadata formats supported by previous
+versions for mdadm are still supported and the kernel still performs
+the same updates it use to. The new 'mdmon' approach is only used for
+newly introduced metadata types.
diff --git a/ReadMe.c b/ReadMe.c
index dd53c48..d0d762e 100644
--- a/ReadMe.c
+++ b/ReadMe.c
@@ -24,7 +24,7 @@
#include "mdadm.h"
-char Version[] = Name " - v3.0-devel2 - 5th November 2008\n";
+char Version[] = Name " - v3.0-devel3 - 10th March 2009\n";
/*
* File: ReadMe.c
diff --git a/inventory b/inventory
index f52ec02..0c4a597 100755
--- a/inventory
+++ b/inventory
@@ -26,6 +26,7 @@ ANNOUNCE-2.6.8
ANNOUNCE-2.6.9
ANNOUNCE-3.0-devel1
ANNOUNCE-3.0-devel2
+ANNOUNCE-3.0-devel3
Assemble.c
bitmap.c
bitmap.h
@@ -66,6 +67,7 @@ mdadm.h
mdadm.spec
mdassemble.8
mdassemble.c
+mdmon.8
mdmon.c
mdmon.h
mdopen.c
@@ -79,6 +81,10 @@ monitor.c
Monitor.c
msg.c
msg.h
+platform-intel.c
+platform-intel.h
+probe_roms.c
+probe_roms.h
pwgr.c
Query.c
raid5extend.c
@@ -139,7 +145,11 @@ tests/07autoassemble
tests/07autodetect
tests/07reshape5intr
tests/07testreshape5
+tests/08imsm-overlap
+tests/09imsm-create-fail-rebuild
tests/check
+tests/env-08imsm-overlap
+tests/env-09imsm-create-fail-rebuild
tests/testdev
tests/ToTest
TODO
diff --git a/makedist b/makedist
index 7adbd7f..03ec5fc 100755
--- a/makedist
+++ b/makedist
@@ -16,7 +16,12 @@ set `grep '^char Version' ReadMe.c `
version=`echo $7 | sed 's/v//'`
grep "^.TH MDADM 8 .. v$version" mdadm.8 > /dev/null 2>&1 ||
{
- echo mdadm.8 does not mention verion $version.
+ echo mdadm.8 does not mention version $version.
+ exit 1
+ }
+grep "^.TH MDMON 8 .. v$version" mdmon.8 > /dev/null 2>&1 ||
+ {
+ echo mdmon.8 does not mention version $version.
exit 1
}
rpmv=`echo $version | tr - _`
diff --git a/mdadm.8 b/mdadm.8
index 1b9071f..064d70a 100644
--- a/mdadm.8
+++ b/mdadm.8
@@ -5,7 +5,7 @@
.\" the Free Software Foundation; either version 2 of the License, or
.\" (at your option) any later version.
.\" See file COPYING in distribution for details.
-.TH MDADM 8 "" v3.0-devel2
+.TH MDADM 8 "" v3.0-devel3
.SH NAME
mdadm \- manage MD devices
.I aka
diff --git a/mdadm.spec b/mdadm.spec
index c290b4e..ea5875c 100644
--- a/mdadm.spec
+++ b/mdadm.spec
@@ -1,6 +1,6 @@
Summary: mdadm is used for controlling Linux md devices (aka RAID arrays)
Name: mdadm
-Version: 3.0_devel2
+Version: 3.0_devel3
Release: 1
Source: http://www.kernel.org/pub/linux/utils/raid/mdadm/mdadm-%{version}.tgz
URL: http://neil.brown.name/blog/mdadm
diff --git a/mdassemble.8 b/mdassemble.8
index a0d07bb..adae918 100644
--- a/mdassemble.8
+++ b/mdassemble.8
@@ -1,5 +1,5 @@
.\" -*- nroff -*-
-.TH MDASSEMBLE 8 "" v3.0-devel2
+.TH MDASSEMBLE 8 "" v3.0-devel3
.SH NAME
mdassemble \- assemble MD devices
.I aka
diff --git a/mdmon.8 b/mdmon.8
index 2cdf145..62d9f2a 100644
--- a/mdmon.8
+++ b/mdmon.8
@@ -1,5 +1,5 @@
.\" See file COPYING in distribution for details.
-.TH MDMON 8 "" v3.0-devel2
+.TH MDMON 8 "" v3.0-devel3
.SH NAME
mdmon \- monitor MD external metadata arrays
diff --git a/super-intel.c b/super-intel.c
index 9c4f0eb..b47371e 100644
--- a/super-intel.c
+++ b/super-intel.c
@@ -2830,7 +2830,7 @@ static unsigned long long merge_extents(struct intel_super *super, int sum_exten
int i, j;
int start_extent;
unsigned long long pos;
- unsigned long long start;
+ unsigned long long start = 0;
unsigned long long maxsize;
unsigned long reserve;