• Mel Gorman's avatar
    mm/vmstat: convert NUMA statistics to basic NUMA counters · f19298b9
    Mel Gorman authored
    NUMA statistics are maintained on the zone level for hits, misses, foreign
    etc but nothing relies on them being perfectly accurate for functional
    correctness.  The counters are used by userspace to get a general overview
    of a workloads NUMA behaviour but the page allocator incurs a high cost to
    maintain perfect accuracy similar to what is required for a vmstat like
    NR_FREE_PAGES.  There even is a sysctl vm.numa_stat to allow userspace to
    turn off the collection of NUMA statistics like NUMA_HIT.
    
    This patch converts NUMA_HIT and friends to be NUMA events with similar
    accuracy to VM events.  There is a possibility that slight errors will be
    introduced but the overall trend as seen by userspace will be similar.
    The counters are no longer updated from vmstat_refresh context as it is
    unnecessary overhead for counters that may never be read by userspace.
    Note that counters could be maintained at the node level to save space but
    it would have a user-visible impact due to /proc/zoneinfo.
    
    [lkp@intel.com: Fix misplaced closing brace for !CONFIG_NUMA]
    
    Link: https://lkml.kernel.org/r/20210512095458.30632-4-mgorman@techsingularity.netSigned-off-by: default avatarMel Gorman <mgorman@techsingularity.net>
    Acked-by: default avatarVlastimil Babka <vbabka@suse.cz>
    Acked-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
    Cc: Chuck Lever <chuck.lever@oracle.com>
    Cc: Ingo Molnar <mingo@kernel.org>
    Cc: Jesper Dangaard Brouer <brouer@redhat.com>
    Cc: Michal Hocko <mhocko@kernel.org>
    Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    f19298b9
vmstat.c 53.6 KB