On Sat, 27 Jul 2019 14:23:33 +0100 Catalin Marinas <catalin.mari...@arm.com> 
wrote:

> Add mempool allocations for struct kmemleak_object and
> kmemleak_scan_area as slightly more resilient than kmem_cache_alloc()
> under memory pressure. Additionally, mask out all the gfp flags passed
> to kmemleak other than GFP_KERNEL|GFP_ATOMIC.
> 
> A boot-time tuning parameter (kmemleak.mempool) is added to allow a
> different minimum pool size (defaulting to NR_CPUS * 4).

Why would anyone ever want to alter this?  Is there some particular
misbehaviour which this will improve?  If so, what is it?

> --- a/Documentation/admin-guide/kernel-parameters.txt
> +++ b/Documentation/admin-guide/kernel-parameters.txt
> @@ -2011,6 +2011,12 @@
>                       Built with CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y,
>                       the default is off.
>  
> +     kmemleak.mempool=
> +                     [KNL] Boot-time tuning of the minimum kmemleak
> +                     metadata pool size.
> +                     Format: <int>
> +                     Default: NR_CPUS * 4
> +

This is the only documentation we provide people and it doesn't really
explain anything at all.  IOW, can we do a better job of explaining all this
to the target audience?

Why does the min size need to be tunable anyway?

Reply via email to