]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
Remove silly convention that major='-1' means 'zero superblock'.
authorNeil Brown <neilb@suse.de>
Sat, 12 Jul 2008 10:27:39 +0000 (20:27 +1000)
committerNeil Brown <neilb@suse.de>
Sat, 12 Jul 2008 10:27:39 +0000 (20:27 +1000)
Use 'info pointer is NULL' instead.

Create.c
Kill.c
super-ddf.c
super0.c
super1.c

index 71871f68ee4d037dea28e4991fa6c14a2ad102c4..fe9323879db71813bc0c30039751ee8c215973aa 100644 (file)
--- a/Create.c
+++ b/Create.c
@@ -487,7 +487,6 @@ int Create(struct supertype *st, char *mddev, int mdfd,
                + info.array.failed_disks;
        info.array.layout = layout;
        info.array.chunk_size = chunk*1024;
-       info.array.major_version = 0; /* Flag to say "not zeroing superblock" */
 
        if (name == NULL || *name == 0) {
                /* base name on mddev */
diff --git a/Kill.c b/Kill.c
index 5b25487272a4844c4d114ad043e538d46f8a2f18..eb7475416322b94862115314012f960c79421731 100644 (file)
--- a/Kill.c
+++ b/Kill.c
@@ -63,10 +63,8 @@ int Kill(char *dev, int force, int quiet, int noexcl)
        if (force && rv >= 2)
                rv = 0; /* ignore bad data in superblock */
        if (rv== 0 || (force && rv >= 2)) {
-               mdu_array_info_t info;
-               info.major_version = -1; /* zero superblock */
                st->ss->free_super(st);
-               st->ss->init_super(st, &info, 0, "", NULL, NULL);
+               st->ss->init_super(st, NULL, 0, "", NULL, NULL);
                if (st->ss->store_super(st, fd)) {
                        if (!quiet)
                                fprintf(stderr, Name ": Could not zero superblock on %s\n",
index a5470062c995db98e5548f3a64e71312a949ba27..cfa79c501b9ce0501b0eaee1ecbb7bd0701bbefb 100644 (file)
@@ -1455,6 +1455,11 @@ static int init_super_ddf(struct supertype *st,
        struct phys_disk *pd;
        struct virtual_disk *vd;
 
+       if (!info) {
+               st->sb = NULL;
+               return 0;
+       }
+
        ddf = malloc(sizeof(*ddf));
        memset(ddf, 0, sizeof(*ddf));
        ddf->dlist = NULL; /* no physical disks yet */
@@ -2558,15 +2563,6 @@ static struct mdinfo *container_content_ddf(struct supertype *st)
        return rest;
 }
 
-static int init_zero_ddf(struct supertype *st,
-                        mdu_array_info_t *info,
-                        unsigned long long size, char *name,
-                        char *homehost, int *uuid)
-{
-       st->sb = NULL;
-       return 0;
-}
-
 static int store_zero_ddf(struct supertype *st, int fd)
 {
        unsigned long long dsize;
@@ -3115,7 +3111,7 @@ struct superswitch super_ddf = {
        .compare_super  = compare_super_ddf,
 
        .load_super     = load_super_ddf,
-       .init_super     = init_zero_ddf,
+       .init_super     = init_super_ddf,
        .store_super    = store_zero_ddf,
        .free_super     = free_super_ddf,
        .match_metadata_desc = match_metadata_desc_ddf,
index 27999d994d6fa5347abb19a5a1a4dd0ccd9051f2..1e06375e80324bfe97301a2360e49d342fcbe6f8 100644 (file)
--- a/super0.c
+++ b/super0.c
@@ -559,7 +559,7 @@ static int init_super0(struct supertype *st, mdu_array_info_t *info,
        memset(sb, 0, MD_SB_BYTES + sizeof(bitmap_super_t));
 
        st->sb = sb;
-       if (info->major_version == -1) {
+       if (info == NULL) {
                /* zeroing the superblock */
                return 0;
        }
index bd9d1c93c33fe991be3d3fcf295154661a1468c2..9c712fc4af515ec50831a7831d334b086d2afe77 100644 (file)
--- a/super1.c
+++ b/super1.c
@@ -697,7 +697,7 @@ static int init_super1(struct supertype *st, mdu_array_info_t *info,
        memset(sb, 0, 1024);
 
        st->sb = sb;
-       if (info->major_version == -1) {
+       if (info == NULL) {
                /* zeroing superblock */
                return 0;
        }