On Mon, Jan 18, 2010 at 6:55 PM, Doug Ledford <dledford@xxxxxxxxxx> wrote: > On 01/18/2010 05:13 PM, Dan Williams wrote: >> Hi Doug, >> >> On Mon, Jan 11, 2010 at 1:38 PM, Doug Ledford <dledford@xxxxxxxxxx> wrote: >>> Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx> >>> --- >>> super-intel.c | 5 ++++- >>> 1 files changed, 4 insertions(+), 1 deletions(-) >>> >>> diff --git a/super-intel.c b/super-intel.c >>> index d6951cc..fcf438c 100644 >>> --- a/super-intel.c >>> +++ b/super-intel.c >>> @@ -3208,7 +3208,10 @@ static int add_to_super_imsm(struct supertype *st, mdu_disk_info_t *dk, >>> dd->fd = fd; >>> dd->e = NULL; >>> rv = imsm_read_serial(fd, devname, dd->serial); >>> - if (rv) { >>> + if (rv && check_env("IMSM_DEVNAME_AS_SERIAL")) { >>> + memset(dd->serial, 0, MAX_RAID_SERIAL_LEN); >>> + fd2devname(fd, (char *) dd->serial); >>> + } else if (rv) { >> >> This just duplicates the check already inside imsm_read_serial(). >> Containers on loopback devices worked before this patch, so I'll send >> a revert. >> >> -- >> Dan > > Me thinks you didn't try it, because this does not duplicate the code in > imsm_read_serial(). That code is needed to assemble an IMSM array that > already exists on loopback devices. This is needed to *create* an imsm > container on fresh loopback devices. I'm assuming your imsm container > superblocks already existed or some such. > Me thinks you did not try it either :-) # export IMSM_DEVNAME_AS_SERIAL=1 # mdadm --zero-superblock /dev/loop[0-3] # mdadm -Eb /dev/loop[0-4] # mdadm -E /dev/loop0 mdadm: No md superblock detected on /dev/loop0. # mdadm --create /dev/md/imsm /dev/loop[0-3] -n 4 -e imsm mdadm: /dev/loop0 appears to contain an ext2fs file system size=306816K mtime=Sat Nov 21 10:54:51 2009 mdadm: /dev/loop1 appears to contain an ext2fs file system size=306816K mtime=Sat Nov 21 10:54:51 2009 mdadm: imsm unable to enumerate platform support array may not be compatible with hardware/firmware Continue creating array? y mdadm: container /dev/md/imsm prepared. # mdadm -Eb /dev/loop[0-3] ARRAY metadata=imsm spares=4 # mdadm -E /dev/loop0 /dev/loop0: Magic : Intel Raid ISM Cfg Sig. Version : 1.0.00 Orig Family : 00000000 Family : 697a43ec Generation : 00000001 UUID : ffffffff:ffffffff:ffffffff:ffffffff Checksum : c3d8d367 correct MPB Sectors : 1 Disks : 1 RAID Devices : 0 Disk00 Serial : /dev/loop0 State : spare Id : 00000000 Usable Size : 204382 (99.81 MiB 104.64 MB) This is with: commit 6acad4811b06335a2602fa1eeaec3a8f47f96591 Author: Michael Evan <mjevans1983@xxxxxxxxx> Date: Wed Dec 9 21:52:18 2009 -0800 -- Dan -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html