]> git.droids-corp.org - dpdk.git/blobdiff - lib/librte_eal/common/malloc_elem.c
malloc: fix realloc padded element size
[dpdk.git] / lib / librte_eal / common / malloc_elem.c
index 658c9b5b7993c33473d414cb36b1996f2cb6ba98..afacb1813cbb22d28bbf13433a42ee8100970db3 100644 (file)
@@ -307,6 +307,11 @@ split_elem(struct malloc_elem *elem, struct malloc_elem *split_pt)
        elem->next = split_pt;
        elem->size = old_elem_size;
        set_trailer(elem);
+       if (elem->pad) {
+               /* Update inner padding inner element size. */
+               elem = RTE_PTR_ADD(elem, elem->pad);
+               elem->size = old_elem_size - elem->pad;
+       }
 }
 
 /*