Commit Graph

135 Commits

Author SHA1 Message Date
mwilck@arcor.de 82c8e664cc tests/10ddf-fail-create-race: test handling of fail/create race
If a disk fails and simulaneously a new array is created, a race
condition may arise because the meta data on disk doesn't reflect
the disk failure yet. This is a test for that case.

Signed-off-by: Martin Wilck <mwilck@arcor.de>
Signed-off-by: NeilBrown <neilb@suse.de>
2013-08-08 09:56:13 +10:00
mwilck@arcor.de 2bcf1873d0 tests/10ddf-fail-spare: more sophisticated result checks
This test can succeed two ways, depending on timing.

Signed-off-by: Martin Wilck <mwilck@arcor.de>
Signed-off-by: NeilBrown <neilb@suse.de>
2013-08-08 09:55:33 +10:00
mwilck@arcor.de e7f9c72024 tests/10ddf-fail-two-spares: new unit test
This is one more unit test for failure/recovery, this time with
double redundancy, which isn't covered by the other tests.

Signed-off-by: NeilBrown <neilb@suse.de>
2013-08-08 09:37:12 +10:00
mwilck@arcor.de 6b924b1e9f tests/10ddf-fail-spare: new unit test
This is Albert Pauw's latest test. Note that this FAILS.

Signed-off-by: Martin Wilck <mwilck@arcor.de>
Signed-off-by: NeilBrown <neilb@suse.de>
2013-08-06 09:54:42 +10:00
mwilck@arcor.de 635ac286c3 tests/10ddf-fail-twice: remove hard-coded assumptions
This test has some randomness because it is not always deterministic
which of the two arrays gets the spare and which remains degraded.
Handle it.

Signed-off-by: Martin Wilck <mwilck@arcor.de>
Signed-off-by: NeilBrown <neilb@suse.de>
2013-08-06 09:52:58 +10:00
mwilck@arcor.de ee7d0c09cd tests/env-ddf-template: some helper functions
helper functions to determine the list of devices in an array,
etc.

Signed-off-by: Martin Wilck <mwilck@arcor.de>
Signed-off-by: NeilBrown <neilb@suse.de>
2013-08-06 09:52:58 +10:00
mwilck@arcor.de 57631ca2ff tests/10ddf-fail-twice: New unit test
This is the test by Albert Pauw. Fail 2 disks, and add one.

Signed-off-by: Martin Wilck <mwilck@arcor.de>
Signed-off-by: NeilBrown <neilb@suse.de>
2013-08-05 12:04:56 +10:00
Martin Wilck d81cc6a72e tests/env-ddf-template: helper for new unit test
I forgot to check in this helper script, similar to the one for IMSM.
It is needed by tests/10ddf-create-fail-rebuild.

Signed-off-by: Martin Wilck <mwilck@arcor.de>
Signed-off-by: NeilBrown <neilb@suse.de>
2013-07-31 16:48:57 +10:00
Martin Wilck 08b0ef8e50 tests/10ddf-create-fail-rebuild: new unit test for DDF
This test adds a new unit test similar to 009imsm-create-fail-rebuild.
With the previous patches, it actually succeeds on my system.

Signed-off-by: Martin Wilck <mwilck@arcor.de>
Signed-off-by: NeilBrown <neilb@suse.de>
2013-07-31 13:04:07 +10:00
NeilBrown 482383022d Add test for --replace handling.
Signed-off-by: NeilBrown <neilb@suse.de>
2013-07-24 15:32:31 +10:00
NeilBrown 7d7092ec6c Improve revert tests
1/ perform revert-grow on more metadata versions
2/ add revert-inplace.

Signed-off-by: NeilBrown <neilb@suse.de>
2013-07-24 12:23:04 +10:00
mwilck@arcor.de 5c41684539 tests/10ddf-geometry: new unit test
Test various RAID geometries, creation and deletion of subarrays

Signed-off-by: NeilBrown <neilb@suse.de>
2013-07-22 16:56:32 +10:00
mwilck@arcor.de abbc450fc2 tests/10ddf-create: create RAID5 first
Let the first created array be RAID5 rather than RAID0. This makes
the test harder than before, because everything after the first
Create has do be done indirectly through mdmon.

Signed-off-by: NeilBrown <neilb@suse.de>
2013-07-22 16:56:32 +10:00
mwilck@arcor.de d242493523 test/10-ddf-create: fix comments
Comments should reflect the changes in the script.

Signed-off-by: NeilBrown <neilb@suse.de>
2013-07-09 14:41:04 +10:00
mwilck@arcor.de cf43d473a0 tests/10ddf-create: add RAID 10 array
This patch adds RAID10 support to the DDF test script.
It actually passes!

Signed-off-by: Martin Wilck <mwilck@arcor.de>
Signed-off-by: NeilBrown <neilb@suse.de>
2013-07-08 16:50:53 +10:00
NeilBrown 8f0ac9d793 tests: add test to revert shrinking reshapes.
Signed-off-by: NeilBrown <neilb@suse.de>
2013-07-04 17:18:24 +10:00
NeilBrown aef14b9e49 tests: add a test for reverting reshapes
Only reverting reshapes that grow the array so far.

Signed-off-by: NeilBrown <neilb@suse.de>
2013-07-04 17:10:36 +10:00
NeilBrown 240cb5a41a tests/raid6repair: default data offset has changed.
So the test scripts must change too.

Signed-off-by: NeilBrown <neilb2suse.de>
2013-06-27 14:29:18 +10:00
NeilBrown 8010806bab tests: add device size tests when change raid leve to/from 0
There was a kernel bug that got this wrong, so better check for it.

Signed-off-by: NeilBrown <neilb@suse.de>
2013-06-25 15:54:44 +10:00
NeilBrown 35698c6e91 tests: add test for converting levels to raid0 and back.
Now that I have this mostly working, I should make sure
it doesn't break...

Signed-off-by: NeilBrown <neilb@suse.de>
2013-06-24 15:57:58 +10:00
NeilBrown 9ccfd3be30 test/00names: use appropriate mdadm.conf
Using non-numeric names needs an mdadm.conf setting,
so make sure we have one.

Signed-off-by: NeilBrown <neilb@suse.de>
2013-06-24 15:48:40 +10:00
NeilBrown 97882bc806 tests: add test for non-numeric device names
Signed-off-by: NeilBrown <neilb@suse.de>
2013-06-19 16:44:18 +10:00
NeilBrown 71417de6fe Add test for interaction of --assemble with --incr
and fix the bug that it found.  The refactor of start_array()
missed a test.

Signed-off-by: NeilBrown <neilb@suse.de>
2013-06-19 16:34:47 +10:00
NeilBrown ccec2685ab Add test for --update=metadata and fix bug it found.
We were not setting device size correctly for raid0.

Signed-off-by: NeilBrown <neilb@suse.de>
2013-06-19 16:28:05 +10:00
NeilBrown 033e098c07 tests: rearrange sometest groupings.
All 'update' tests in 04
More imsm tests in 09

Signed-off-by: NeilBrown <neilb@suse.de>
2013-06-19 13:46:53 +10:00
NeilBrown 1011e8344a Remove lots of unnecessary white space.
Now that I am using white-space mode in Emacs I can see all of this,
and I don't like it :-)

Signed-off-by: NeilBrown <neilb@suse.de>
2013-06-19 12:31:45 +10:00
NeilBrown 79b2ed4f24 tests: zero devices before --adding them.
Linux 3.10 will allow more "--add" to be handled as "--re-add".
To be sure the tests work correctly we sometimes need to zero
the device to ensure it really is an --add that happens.

Signed-off-by: NeilBrown <neilb@suse.de>
2013-05-01 09:24:11 +10:00
mwilck@arcor.de a6592497cd tests/10ddf-create: omit log output check
The test script was counting output lines - its expectations
don't match the current code any more. Remove this pointless
test.

Signed-off-by: Martin Wilck <mwilck@arcor.de>
Signed-off-by: NeilBrown <neilb@suse.de>
2013-04-23 14:55:32 +10:00
NeilBrown bde085f411 test: add --disable-integrity switch.
The integrity tests are very slow and aren't always needed.
So make them optional.

Signed-off-by: NeilBrown <neilb@suse.de>
2012-11-20 12:08:03 +11:00
NeilBrown 156044805c Tests: adjust for recent changes.
commit cb19a251a5
    super1: reserve  at least 2 chunks for reshape headroom.

reserved more space in a RAID5, so we need to update to array
sizes when reshaping.
Also make sure reshape tests we change the shape:  raid5->raid1
was failing and we didn't notice.

Signed-off-by: NeilBrown <neilb@suse.de>
2012-11-20 12:06:53 +11:00
Gilles Espinasse ef6e87a7b9 Fix tests sh too many arguments warnings
Signed-off-by: Gilles Espinasse <g.esp@free.fr>

Add quotes on if [ $sum != $sum1 ]
Fix 2 typo /sh1sum/sha1sum/ /matc /match /
Signed-off-by: NeilBrown <neilb@suse.de>
2012-10-11 10:38:51 +11:00
Robert Buchholz 8a63c73123 raid6check: Auto-repair mode
When calling raid6check in regular scanning mode, specifiying
"autorepair" as the last positional parameter will cause it
to automatically repair any single slot failes it identifies.

Signed-off-by: NeilBrown <neilb@suse.de>
2012-09-10 17:28:21 +10:00
Robert Buchholz 696e95a1df raid6check: Repair mode used geo_map incorrectly
In repair mode, the data block indices to be repaired were calculated
using geo_map() which returns the disk slot for a data block index
and not the reverse. Now we simply store the reverse of that calculation
when we do it anyway.

Signed-off-by: NeilBrown <neilb@suse.de>
2012-09-10 17:25:27 +10:00
Jes Sorensen aa437afc1c 07reshape5intr: Set speed_limit_min to be able to reduce resync speed below 1000
We need to set speed_limit_min accordingly, otherwise setting
speed_limit_max below 1000 will have no effect.

Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: NeilBrown <neilb@suse.de>
2012-08-13 08:00:21 +10:00
NeilBrown e999152898 tests/03r5assemV1: reduce sync speed further.
This test is quite sensitive to resync speed - if the resync happens
to quickly it fails because it sees aan optimal array when it expects
a degraded array.
1000 is often slow enough but now always, so slow it down even more.
This requires reducing speed_limit_min also as kernel ignores 'max'
when speed is below 'min'.

Reported-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: NeilBrown <neilb@suse.de>
2012-08-13 08:00:21 +10:00
Robert Buchholz f2e29ad691 Repair mode for raid6
In repair mode, raid6check will rewrite one single stripe
by regenerating the data (or parity) of two raid devices that
are specified via the command line.
If you need to rewrite just one slot, pick any other slot
at random.

Note that the repair option will change data on the disks
directly, so both the md layer above as well as any layers
above md (such as filesystems) may be accessing the stripe
data from cached buffers. Either instruct the kernels
to drop the caches or reassemble the raid after repair.

Signed-off-by: NeilBrown <neilb@suse.de>
2012-07-09 17:22:45 +10:00
Jes Sorensen 5e311406c4 New tests testing removal of internal bitmaps
To match the add-bitmap tests, here is a set of tests checking the
removal of bitmaps.

Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: NeilBrown <neilb@suse.de>
2012-05-30 10:46:25 +10:00
Jes Sorensen 451e30b1e6 New tests testing the addition of bitmaps
This set of tests verifies that it is possible to add an internal
bitmap to an existing array, and that the device can be written to
after the bitmap is added. This should catch cases such as the one
fixed by 4474ca42e2577563a919fd3ed782e2ec55bf11a2

Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: NeilBrown <neilb@suse.de>
2012-05-30 10:45:27 +10:00
Anton Blanchard ffec313014 Increase minimum chunk size in testsuite to 64kB
When running the mdadm testsuite on ppc64 with a 64kB page size I
see a couple of failures because the chunk size is smaller than a
page.

Bump the chunksize to 64kB to fix these failures.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: NeilBrown <neilb@suse.de>
2012-05-24 15:36:30 +10:00
Jes Sorensen 04c1ca5f29 Check for multipath module before running multipath tests
Some systems do not ship the md multipath module. If not available
simply skip any multipath tests.

Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: NeilBrown <neilb@suse.de>
2012-05-23 13:25:44 +10:00
NeilBrown 3c8b273984 Update some device sizes for self tests.
A recent change means that devices smaller than
1Gig no longer have 1Meg wasted at the start.
So we must adjust some sizes again.

Signed-off-by: NeilBrown <neilb@suse.de>
2012-05-18 17:08:28 +10:00
NeilBrown c07d640009 Fix tests/05r1-re-add-nosupper
This shouldn't have been changed when we size of RAID1
arrays was changed, as this uses 'build', not 'create'

Signed-off-by: NeilBrown <neilb@suse.de>
2012-03-22 17:30:07 +11:00
NeilBrown ae6c05ad83 Create: round off size for RAID1 arrays.
RAID1 arrays don't have a chunk size, but if you ever convert
one to RAID5 you will need at least a small one >= 4K.
So round of size to a multiple of 64K.

This only affect Create, not "--grow --size=max".  The latter
is too hard and with smaller returns.

Signed-off-by: NeilBrown <neilb@suse.de>
2012-03-22 16:53:51 +11:00
NeilBrown 0b50d3359a tests/03r5assemV1 - slow down recovery a bit more.
In this test we stop and restart an array that is being recovered,
and we do that several times.  Sometimes it completes the recovery
before we expect and test results are wrong.

So slow it down a bit more.

Signed-off-by: NeilBrown <neilb@suse.de>
2011-12-23 06:41:52 +11:00
NeilBrown 4ccc2562ac More fixes for tests.
Some more fixes to help some tests run properly.

Signed-off-by: NeilBrown <neilb@suse.de>
2011-06-16 14:18:18 +10:00
NeilBrown af538d59c1 test/ddf add a udevadm settle
We need to settle udev before assuming the devices exist.

Signed-off-by: NeilBrown <neilb@suse.de
2011-06-15 16:30:12 +10:00
NeilBrown 67480d7593 Remove more duplicated code
Code from env-imsm-template is also in 09imsm-create-fail-rebuild,
so remove it from there.

Signed-off-by: NeilBrown <neilb@suse.de>
2011-06-15 16:30:09 +10:00
NeilBrown d338d8a8e0 tests/08imsm-overlap - remove duplicated code
This test contains a lot of code that is also in env-imsm-template.
So remove it and simple source the other.

Signed-off-by: NeilBrown <neilb@suse.de>
2011-06-15 16:06:57 +10:00
NeilBrown 17f7da2f42 Fix imsm-overlap test.
Now that we reserve space for migration buffer devices are a little
bit smaller so we need to allow for that in the test suite.

Also add a 'udevadm settle' - it seems to help

Signed-off-by: NeilBrown <neilb@suse.de>
2011-06-15 14:39:28 +10:00
Adam Kwolek 6820c9ab02 imsm: Unit Tests - remove backup-file during grow command
Update reshape/migration unit tests to not to use backup file.
Imsm native check-pointing has to be used (internally) instead.

Signed-off-by: Krzysztof Wojcik <krzysztof.wojcik@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
2011-06-08 17:15:04 +10:00