From: Tomohiro Kusumi <tkusumi@xxxxxxxxxx> The footer offset (diff between malloc'd address and aligned address) is (alignment-1) at most, and footer appears `size' bytes after the aligned address, thus required size is (alignment-1 + size + sizeof(*f)). The existing code seems to allocate extra unused `size' bytes. Signed-off-by: Tomohiro Kusumi <tkusumi@xxxxxxxxxx> --- lib/memalign.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/memalign.c b/lib/memalign.c index 137cc8e..bfbd1e8 100644 --- a/lib/memalign.c +++ b/lib/memalign.c @@ -18,7 +18,7 @@ void *fio_memalign(size_t alignment, size_t size) assert(!(alignment & (alignment - 1))); - ptr = malloc(size + alignment + size + sizeof(*f) - 1); + ptr = malloc(size + alignment + sizeof(*f) - 1); if (ptr) { ret = PTR_ALIGN(ptr, alignment - 1); f = ret + size; -- 2.9.5 -- To unsubscribe from this list: send the line "unsubscribe fio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html