Hello, tested with linux-2.6.git a4f1cb9f3c42e5d278b0678ed5225d9331a8dcff If i have spare disk i can grow raid1, raid4, raid5 and raid6 but can't convert to other raid level. Raid conversation matrix: from\to | 0 | 1 | 4 | 5 | 6 ============================ raid0 | - - - - - raid1 | - + - - - raid4 |-22 -22 + -22 -22 raid5 |-22 -22 -22 + -22 raid6 |-22 -22 -22 -22 + Sample test script, log, dmesg, kernel config is attached. Major problem is than can not do online covert from raid5 to raid6: ## create raid5 # mdadm --create /dev/md0 --level=5 --raid-devices=2 \ /dev/loop1 /dev/loop2 mdadm: array /dev/md0 started. ## add some spare devices # mdadm --add /dev/md0 /dev/loop5 /dev/loop6 mdadm: added /dev/loop5 mdadm: added /dev/loop6 ## try to convert to raid6 # mdadm --grow /dev/md0 --level=6 --raid-devices=4 mdadm: Need to backup 128K of critical section.. mdadm: Cannot set device size/shape for /dev/md0: Invalid argument dmesg: md: couldn't update array info. -22