Commit 2d76e793 authored by Uladzislau Rezki (Sony)'s avatar Uladzislau Rezki (Sony) Committed by Andrew Morton
Browse files

lib/test_vmalloc.c: allow built-in execution

Remove the dependency on module loading ("m") for the vmalloc test suite,
enabling it to be built directly into the kernel, so both ("=m") and
("=y") are supported.

Motivation:
- Faster debugging/testing of vmalloc code;
- It allows to configure the test via kernel-boot parameters.

Configuration example:
  test_vmalloc.nr_threads=64
  test_vmalloc.run_test_mask=7
  test_vmalloc.sequential_test_order=1

Link: https://lkml.kernel.org/r/20250417161216.88318-2-urezki@gmail.com


Signed-off-by: default avatarUladzislau Rezki (Sony) <urezki@gmail.com>
Reviewed-by: default avatarBaoquan He <bhe@redhat.com>
Reviewed-by: default avatarAdrian Huang <ahuang12@lenovo.com>
Tested-by: default avatarAdrian Huang <ahuang12@lenovo.com>
Cc: Christop Hellwig <hch@infradead.org>
Cc: Mateusz Guzik <mjguzik@gmail.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent 7a73348e
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -2575,7 +2575,6 @@ config TEST_VMALLOC
	tristate "Test module for stress/performance analysis of vmalloc allocator"
	default n
	depends on MMU
	depends on m
	help
	  This builds the "test_vmalloc" module that should be used for
	  stress and performance analysis. So, any new change for vmalloc
+3 −2
Original line number Diff line number Diff line
@@ -591,10 +591,11 @@ static void do_concurrent_test(void)
	kvfree(tdriver);
}

static int vmalloc_test_init(void)
static int __init vmalloc_test_init(void)
{
	do_concurrent_test();
	return -EAGAIN; /* Fail will directly unload the module */
	/* Fail will directly unload the module */
	return IS_BUILTIN(CONFIG_TEST_VMALLOC) ? 0:-EAGAIN;
}

module_init(vmalloc_test_init)