Reverting the devices to their original size should just restore the RAID device.
You can confirm that by doing:
losetup --sizelimit=$((1230*(2**30))) -r /dev/loop1 /dev/dm-10
mdadm -E /dev/loop1
mdadm should now find the superblock if the size is correct. Then you can resize your disks back to that size (-r above is for read-only, so it won't do any harm).
If you actually do want to enlarge the md0 array and keep the 0.9 metadata, one thing you could do is:
dmsetup create d1 --table "0 $((1230*(2**30)/512)) linear /dev/dm-10 0"
dmsetup create d2 --table "0 $((1230*(2**30)/512)) linear /dev/dm-11 0"
Once again,
mdadm -E /dev/mapper/d1
should display the raid device.
Assemble the array on those mapper devices:
mdadm -A /dev/md0 /dev/mapper/d[12]
And then resize the devices to the full extent:
dmsetup suspend d1
dmsetup suspend d2
dmsetup reload d1 --table "0 $(blockdev --getsize /dev/dm-10) linear /dev/dm-10 0"
dmsetup reload d2 --table "0 $(blockdev --getsize /dev/dm-11) linear /dev/dm-11 0"
dmsetup resume d1
dmsetup resume d2
Then, you can use --grow to use that extra space:
mdadm /dev/md0 --grow --size max
Wait for the extra space to be resynced, stop the array, cleanup the extra dm devices and reassemble on the original devices:
mdadm --stop /dev/md0
dmsetup remove d1
dmsetup remove d2
mdadm -A /dev/md0 /dev/dm-1[01]
You can use loop devices to do tests beforehand to verify the procedure. Here's a screen capture of what I did to verify that it worked:
~# truncate -s 1230G a
~# truncate -s 1230G b
~# losetup /dev/loop1 a
~# losetup /dev/loop2 b
~# lsblk /dev/loop[12]
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop1 7:32 0 1.2T 0 loop
loop2 7:64 0 1.2T 0 loop
~# mdadm --create /dev/md0 --metadata 0.9 --level 1 --raid-devices 2 --assume-clean /dev/loop[12]
mdadm: array /dev/md0 started.
~# lsblk /dev/md0
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
md0 9:0 0 1.2T 0 raid1
~# truncate -s 1700G a
~# truncate -s 1700G b
~# losetup -c /dev/loop1
~# losetup -c /dev/loop2
~# lsblk /dev/loop[12]
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop1 7:32 0 1.7T 0 loop
└─md0 9:0 0 1.2T 0 raid1
loop2 7:64 0 1.7T 0 loop
└─md0 9:0 0 1.2T 0 raid1
~# mdadm -E /dev/loop1
mdadm: No md superblock detected on /dev/loop1.
(1)~# mdadm --stop /dev/md0
mdadm: stopped /dev/md0
~# dmsetup create d1 --table "0 $((1230*(2**30)/512)) linear /dev/loop1 0"
~# dmsetup create d2 --table "0 $((1230*(2**30)/512)) linear /dev/loop2 0"
~# mdadm -A /dev/md0 /dev/mapper/d[12]
mdadm: /dev/md0 has been started with 2 drives.
~# lsblk /dev/mapper/d[12]
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
d1 (dm-19) 253:19 0 1.2T 0 dm
└─md0 9:0 0 1.2T 0 raid1
d2 (dm-20) 253:20 0 1.2T 0 dm
└─md0 9:0 0 1.2T 0 raid1
~# dmsetup suspend d1
~# dmsetup suspend d2
~# dmsetup reload d1 --table "0 $(blockdev --getsize /dev/loop1) linear /dev/loop1 0"
~# dmsetup reload d2 --table "0 $(blockdev --getsize /dev/loop2) linear /dev/loop2 0"
~# dmsetup resume d1
~# dmsetup resume d2
~# lsblk /dev/mapper/d[12]
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
d1 (dm-19) 253:19 0 1.7T 0 dm
└─md0 9:0 0 1.2T 0 raid1
d2 (dm-20) 253:20 0 1.7T 0 dm
└─md0 9:0 0 1.2T 0 raid1
~# mdadm /dev/md0 --grow --assume-clean --size max
mdadm: component size of /dev/md0 has been set to 1782579136K
~# lsblk /dev/md0
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
md0 9:0 0 1.7T 0 raid1
~# cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 dm-19[0] dm-20[1]
1782579136 blocks [2/2] [UU]
unused devices: <none>
~# mdadm --stop /dev/md0
mdadm: stopped /dev/md0
~# dmsetup remove d1
~# dmsetup remove d2
~# mdadm -A /dev/md0 /dev/loop[12]
mdadm: /dev/md0 has been started with 2 drives.
~# lsblk /dev/md0
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
md0 9:0 0 1.7T 0 raid1
~# uname -rs
Linux 3.7-trunk-amd64