On 12/5/23 01:53, Hyeonggon Yoo wrote: > On Sun, Dec 3, 2023 at 9:16 AM <sxwjean@xxxxxx> wrote: >> >> From: Xiongwei Song <xiongwei.song@xxxxxxxxxxxxx> >> >> There is no a value assigned to slub_min_objects by default, it always >> is 0 that is initialized by compiler if no assigned value by command line. >> min_objects is calculated based on processor numbers in calculate_order(). >> For more details, see commit 9b2cd506e5f2 ("slub: Calculate min_objects >> based on number of processors.") >> >> Signed-off-by: Xiongwei Song <xiongwei.song@xxxxxxxxxxxxx> > > While slub_min_objects equals zero by default, 'min_objects' overrides it to > 4 * (fls(nr_cpus) + 1) when not set. so when slub_min_objects is not > set, it would be > equal to or higher than 4. I'm not sure this level of implementation > detail is worth documenting. We could say e.g. "(default: automaticaly scaled by number of cpus)" > Also, I think patch 2 should update Documentation/mm/slub.rst too. > (slub_$param -> slab_param) I'd do it as separate patch, not part of patch 2. >> --- >> Documentation/mm/slub.rst | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/Documentation/mm/slub.rst b/Documentation/mm/slub.rst >> index be75971532f5..1f4399581449 100644 >> --- a/Documentation/mm/slub.rst >> +++ b/Documentation/mm/slub.rst >> @@ -150,7 +150,7 @@ list_lock once in a while to deal with partial slabs. That overhead is >> governed by the order of the allocation for each slab. The allocations >> can be influenced by kernel parameters: >> >> -.. slub_min_objects=x (default 4) >> +.. slub_min_objects=x (default 0) >> .. slub_min_order=x (default 0) >> .. slub_max_order=x (default 3 (PAGE_ALLOC_COSTLY_ORDER)) >> >> -- >> 2.34.1 >>