]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
init_super1() memset full buffer allocated for superblock
authorJes Sorensen <Jes.Sorensen@redhat.com>
Tue, 20 Mar 2012 21:00:26 +0000 (08:00 +1100)
committerNeilBrown <neilb@suse.de>
Tue, 20 Mar 2012 21:00:26 +0000 (08:00 +1100)
Avoid possibly using stale data in bitmap and misc area of superblock.
In addition, remove superfluous memsets already covered by memset of
full superblock.

Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: NeilBrown <neilb@suse.de>
super1.c

index f165f59201342a60fa6589ddb1d7f76db55fb5d6..4da599179e27aa376f8e3ae5348efc05d90ea915 100644 (file)
--- a/super1.c
+++ b/super1.c
@@ -848,7 +848,7 @@ static int init_super1(struct supertype *st, mdu_array_info_t *info,
                        ": %s could not allocate superblock\n", __func__);
                return 0;
        }
-       memset(sb, 0, MAX_SB_SIZE);
+       memset(sb, 0, SUPER1_SIZE);
 
        st->sb = sb;
        if (info == NULL) {
@@ -883,7 +883,6 @@ static int init_super1(struct supertype *st, mdu_array_info_t *info,
                sprintf(defname, "%d", info->md_minor);
                name = defname;
        }
-       memset(sb->set_name, 0, 32);
        if (homehost &&
            strchr(name, ':')== NULL &&
            strlen(homehost)+1+strlen(name) < 32) {