]> git.ipfire.org Git - thirdparty/mdadm.git/blobdiff - super-ddf.c
ddf: fix bug with error returns.
[thirdparty/mdadm.git] / super-ddf.c
index 965b8e2cd10a311decbed16bcb89aae5ac5a7f4f..11a3bac9092993230362dbb070b1b0099eb7e6dd 100644 (file)
@@ -781,22 +781,20 @@ static int load_super_ddf(struct supertype *st, int fd,
 
        /* 32M is a lower bound */
        if (dsize <= 32*1024*1024) {
-               if (devname) {
+               if (devname)
                        fprintf(stderr,
                                Name ": %s is too small for ddf: "
                                "size is %llu sectors.\n",
                                devname, dsize>>9);
-                       return 1;
-               }
+               return 1;
        }
        if (dsize & 511) {
-               if (devname) {
+               if (devname)
                        fprintf(stderr,
                                Name ": %s is an odd size for ddf: "
                                "size is %llu bytes.\n",
                                devname, dsize);
-                       return 1;
-               }
+               return 1;
        }
 
        if (posix_memalign((void**)&super, 512, sizeof(*super))!= 0) {
@@ -1335,6 +1333,7 @@ static void getinfo_super_ddf(struct supertype *st, struct mdinfo *info)
                info->component_size = ddf->dlist->size - info->data_offset;
        } else {
                info->disk.number = -1;
+               info->disk.raid_disk = -1;
 //             info->disk.raid_disk = find refnum in the table and use index;
        }
        info->disk.state = (1 << MD_DISK_SYNC);