summaryrefslogtreecommitdiffstats
path: root/tests/02r6grow
blob: ef864e25a768a8f3ba6e4d6a005069f35da83edb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37

set -e

# create a small raid6 array, make it larger.  Then make it smaller

$mdadm -CR $md0 --level raid6 --chunk=32 --raid-disks 4 --size $[size/2] $dev1 $dev2 $dev3 $dev4 
$check wait
$check state UUUU
sh tests/testdev $md0 2 $[size/2] 32

$mdadm --grow $md0 --size max
$check resync
$check wait
sh tests/testdev $md0 2 $mdsize0 64

$mdadm --grow $md0 --size $[size/2]
$check nosync
sh tests/testdev $md0 2 $[size/2] 64

$mdadm -S $md0

# same again with version 1.1 superblock
$mdadm -CR $md0 --level raid6 --metadata=1.1 --chunk=128 --raid-disks 4 --size $[size/2] $dev1 $dev2 $dev3 $dev4 
$check wait
$check state UUUU
sh tests/testdev $md0 2 $[size/2] 128

$mdadm --grow $md0 --size max
$check resync
$check wait
sh tests/testdev $md0 2 $[size-1] 128

$mdadm --grow $md0 --size $[size/2]
$check nosync
sh tests/testdev $md0 2 $[size/2] 128

$mdadm -S $md0