From e337f2cb0f554c2b7fadd8d1c8cabf479486b031 Mon Sep 17 00:00:00 2001 From: Christian Helmuth Date: Mon, 21 Aug 2023 14:35:05 +0200 Subject: [PATCH] lx_emul: natural alignment of power-of-two kmalloc --- repos/dde_linux/src/lib/lx_emul/shadow/mm/slub.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/repos/dde_linux/src/lib/lx_emul/shadow/mm/slub.c b/repos/dde_linux/src/lib/lx_emul/shadow/mm/slub.c index 655ffacdf0..dd623b088a 100644 --- a/repos/dde_linux/src/lib/lx_emul/shadow/mm/slub.c +++ b/repos/dde_linux/src/lib/lx_emul/shadow/mm/slub.c @@ -46,6 +46,9 @@ void * __kmalloc(size_t size, gfp_t flags) /* for page-rounded sizes use page-alignment */ if ((size % PAGE_SIZE) == 0) align = PAGE_SIZE; + /* guarantee natural alignment for power-of-two kmalloc (see mm/slab_common.c) */ + if (is_power_of_2(size)) align = max_t(unsigned long, align, size); + return lx_emul_mem_alloc_aligned(size, align); }