From a7322ae12f674e7eb1c7af183d130ae3120de2bd Mon Sep 17 00:00:00 2001 From: NeilBrown Date: Fri, 23 Dec 2011 14:09:29 +1100 Subject: [PATCH] Subject: bitmap: used 4K aligned buffers when reading the bitmap. This is needed on 4K block devices such as DASD as we do O_DIRECT reads. Do the same alignment for gpt just to be safe. Signed-off-by: NeilBrown --- bitmap.c | 2 +- super-gpt.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bitmap.c b/bitmap.c index 103706be..c27688c5 100644 --- a/bitmap.c +++ b/bitmap.c @@ -132,7 +132,7 @@ bitmap_info_t *bitmap_fd_read(int fd, int brief) void *buf; unsigned int n, skip; - if (posix_memalign(&buf, 512, 8192) != 0) { + if (posix_memalign(&buf, 4096, 8192) != 0) { fprintf(stderr, Name ": failed to allocate 8192 bytes\n"); return NULL; } diff --git a/super-gpt.c b/super-gpt.c index b8c9aae9..75269bf1 100644 --- a/super-gpt.c +++ b/super-gpt.c @@ -76,7 +76,7 @@ static int load_gpt(struct supertype *st, int fd, char *devname) free_gpt(st); - if (posix_memalign((void**)&super, 512, 32*512) != 0) { + if (posix_memalign((void**)&super, 4096, 32*512) != 0) { fprintf(stderr, Name ": %s could not allocate superblock\n", __func__); return 1; -- 2.39.2