diff --git a/Create.c b/Create.c index 0399732..178d62e 100644 --- a/Create.c +++ b/Create.c @@ -74,6 +74,8 @@ int Create(struct supertype *st, char *mddev, int mdfd, mdu_array_info_t array; int major = BITMAP_MAJOR_HI; + memset(array, 0, sizeof(array)); + vers = md_get_version(mdfd); if (vers < 9000) { fprintf(stderr, Name ": Create requires md driver version 0.90.0 or later\n"); diff --git a/super0.c b/super0.c index 64acf1a..2884855 100644 --- a/super0.c +++ b/super0.c @@ -691,7 +691,7 @@ static int add_internal_bitmap0(struct supertype *st, void *sbv, int chunk, int sb->state |= (1<magic = __cpu_to_le32(BITMAP_MAGIC); bms->version = __cpu_to_le32(major); uuid_from_super0((int*)bms->uuid, sb); diff --git a/super1.c b/super1.c index 75f0c8a..bb98bb9 100644 --- a/super1.c +++ b/super1.c @@ -896,7 +896,7 @@ add_internal_bitmap1(struct supertype *st, void *sbv, sb->bitmap_offset = __cpu_to_le32(2); sb->feature_map = __cpu_to_le32(__le32_to_cpu(sb->feature_map) | 1); - memset(bms, sizeof(*bms), 0); + memset(bms, 0, sizeof(*bms)); bms->magic = __cpu_to_le32(BITMAP_MAGIC); bms->version = __cpu_to_le32(major); uuid_from_super1((int*)bms->uuid, sb);