radix tree test suite: fix allocation calculation in kmem_cache_alloc_bulk()
The bulk allocation is iterating through an array and storing enough memory for the entire bulk allocation instead of a single array entry. Only allocate an array element of the size set in the kmem_cache. Link: https://lkml.kernel.org/r/20230929201359.2857583-1-Liam.Howlett@oracle.com Fixes: cc86e0c2f306 ("radix tree test suite: add support for slab bulk APIs") Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com> Reported-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Cc: Matthew Wilcox (Oracle) <willy@infradead.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
46fd75d4a3
commit
7771dcf019
@ -165,9 +165,9 @@ int kmem_cache_alloc_bulk(struct kmem_cache *cachep, gfp_t gfp, size_t size,
|
|||||||
for (i = 0; i < size; i++) {
|
for (i = 0; i < size; i++) {
|
||||||
if (cachep->align) {
|
if (cachep->align) {
|
||||||
posix_memalign(&p[i], cachep->align,
|
posix_memalign(&p[i], cachep->align,
|
||||||
cachep->size * size);
|
cachep->size);
|
||||||
} else {
|
} else {
|
||||||
p[i] = malloc(cachep->size * size);
|
p[i] = malloc(cachep->size);
|
||||||
}
|
}
|
||||||
if (cachep->ctor)
|
if (cachep->ctor)
|
||||||
cachep->ctor(p[i]);
|
cachep->ctor(p[i]);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user