summaryrefslogtreecommitdiff
path: root/lib/test_vmalloc.c
diff options
context:
space:
mode:
authorPetr Mladek <pmladek@suse.com>2026-04-20 13:41:28 +0200
committerPetr Mladek <pmladek@suse.com>2026-04-20 13:41:28 +0200
commit3e9e952bb3139ad1e08f3e1960239c2988ab90c9 (patch)
treeee27c846e06879bc062388cf948086caeda676cf /lib/test_vmalloc.c
parentaea645c02f1acc36088618667e086b62d8f83e92 (diff)
parent8901ac9d2c7eb8ed7ae5e749bf13ecb3b6062488 (diff)
Merge branch 'for-7.1-printf-kunit-build' into for-linus
Diffstat (limited to 'lib/test_vmalloc.c')
-rw-r--r--lib/test_vmalloc.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/lib/test_vmalloc.c b/lib/test_vmalloc.c
index 6521c05c7816..876c72c18a0c 100644
--- a/lib/test_vmalloc.c
+++ b/lib/test_vmalloc.c
@@ -58,6 +58,9 @@ __param(int, run_test_mask, 7,
/* Add a new test case description here. */
);
+__param(int, nr_pcpu_objects, 35000,
+ "Number of pcpu objects to allocate for pcpu_alloc_test");
+
/*
* This is for synchronization of setup phase.
*/
@@ -317,24 +320,24 @@ pcpu_alloc_test(void)
size_t size, align;
int i;
- pcpu = vmalloc(sizeof(void __percpu *) * 35000);
+ pcpu = vmalloc(sizeof(void __percpu *) * nr_pcpu_objects);
if (!pcpu)
return -1;
- for (i = 0; i < 35000; i++) {
+ for (i = 0; i < nr_pcpu_objects; i++) {
size = get_random_u32_inclusive(1, PAGE_SIZE / 4);
/*
* Maximum PAGE_SIZE
*/
- align = 1 << get_random_u32_inclusive(1, 11);
+ align = 1 << get_random_u32_inclusive(1, PAGE_SHIFT - 1);
pcpu[i] = __alloc_percpu(size, align);
if (!pcpu[i])
rv = -1;
}
- for (i = 0; i < 35000; i++)
+ for (i = 0; i < nr_pcpu_objects; i++)
free_percpu(pcpu[i]);
vfree(pcpu);
@@ -393,7 +396,7 @@ vm_map_ram_test(void)
int i;
map_nr_pages = nr_pages > 0 ? nr_pages:1;
- pages = kcalloc(map_nr_pages, sizeof(struct page *), GFP_KERNEL);
+ pages = kzalloc_objs(struct page *, map_nr_pages);
if (!pages)
return -1;
@@ -539,7 +542,7 @@ init_test_configuration(void)
nr_threads = clamp(nr_threads, 1, (int) USHRT_MAX);
/* Allocate the space for test instances. */
- tdriver = kvcalloc(nr_threads, sizeof(*tdriver), GFP_KERNEL);
+ tdriver = kvzalloc_objs(*tdriver, nr_threads);
if (tdriver == NULL)
return -1;