malloc_simple: Correct the alignment logic in memalign_simple()
authorSimon Glass <sjg@chromium.org>
Fri, 14 Aug 2015 19:26:43 +0000 (13:26 -0600)
committerTom Rini <trini@konsulko.com>
Fri, 28 Aug 2015 16:33:14 +0000 (12:33 -0400)
This should use the align parameter, not bytes. Natural alignment is one
use case but should not be the only one supported by this function.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
common/malloc_simple.c

index 9811ab60f6d174a35c9b4e68d39321bca4beb8be..134e05970672b045aec9cfe74c566f32fb35699a 100644 (file)
@@ -31,7 +31,7 @@ void *memalign_simple(size_t align, size_t bytes)
        ulong addr, new_ptr;
        void *ptr;
 
-       addr = ALIGN(gd->malloc_base + gd->malloc_ptr, bytes);
+       addr = ALIGN(gd->malloc_base + gd->malloc_ptr, align);
        new_ptr = addr + bytes;
        if (new_ptr > gd->malloc_limit)
                return NULL;