From: Jes Sorensen Date: Tue, 20 Mar 2012 21:01:04 +0000 (+1100) Subject: Use 4K buffer alignment for superblock allocations X-Git-Tag: mdadm-3.2.4~61 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3c0bcd460908469613fae3bdf25e191f9d65e70b;p=thirdparty%2Fmdadm.git Use 4K buffer alignment for superblock allocations To better accommodate 4K sector drives, use 4K buffer alignment for superblock buffers. Signed-off-by: Jes Sorensen Signed-off-by: NeilBrown --- diff --git a/super1.c b/super1.c index 61655ada..447515b4 100644 --- a/super1.c +++ b/super1.c @@ -843,7 +843,7 @@ static int init_super1(struct supertype *st, mdu_array_info_t *info, char defname[10]; int sbsize; - if (posix_memalign((void**)&sb, 512, SUPER1_SIZE) != 0) { + if (posix_memalign((void**)&sb, 4096, SUPER1_SIZE) != 0) { fprintf(stderr, Name ": %s could not allocate superblock\n", __func__); return 0; @@ -1227,7 +1227,7 @@ static int compare_super1(struct supertype *st, struct supertype *tst) return 1; if (!first) { - if (posix_memalign((void**)&first, 512, SUPER1_SIZE) != 0) { + if (posix_memalign((void**)&first, 4096, SUPER1_SIZE) != 0) { fprintf(stderr, Name ": %s could not allocate superblock\n", __func__); return 1; @@ -1339,7 +1339,7 @@ static int load_super1(struct supertype *st, int fd, char *devname) return 1; } - if (posix_memalign((void**)&super, 512, SUPER1_SIZE) != 0) { + if (posix_memalign((void**)&super, 4096, SUPER1_SIZE) != 0) { fprintf(stderr, Name ": %s could not allocate superblock\n", __func__); return 1;