Re: [PATCH] x86/mm: Tracking linear mapping split events since boot

From: Dave Hansen
Date: Mon Jan 25 2021 - 15:16:55 EST


On 1/25/21 12:11 PM, Saravanan D wrote:
> Numerous hugepage splits in the linear mapping would give
> admins the signal to narrow down the sluggishness caused by TLB
> miss/reload.
>
> One of the many lasting (as we don't coalesce back) sources for huge page
> splits is tracing as the granular page attribute/permission changes would
> force the kernel to split code segments mapped to huge pages to smaller
> ones thereby increasing the probability of TLB miss/reload even after
> tracing has been stopped.
>
> The split event information will be displayed at the bottom of
> /proc/meminfo
> ....
> DirectMap4k: 3505112 kB
> DirectMap2M: 19464192 kB
> DirectMap1G: 12582912 kB
> DirectMap2MSplits: 1705
> DirectMap1GSplits: 20

This seems much more like something we'd want in /proc/vmstat or as a
tracepoint than meminfo. A tracepoint would be especially nice because
the trace buffer could actually be examined if an admin finds an
excessive number of these.