From 3c0bcd460908469613fae3bdf25e191f9d65e70b Mon Sep 17 00:00:00 2001 From: Jes Sorensen Date: Wed, 21 Mar 2012 08:01:04 +1100 Subject: [PATCH] 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 --- super1.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) 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; -- 2.39.2