• Li Zhijian's avatar
    mm/vmstat: move pgdemote_* to per-node stats · 23e9f013
    Li Zhijian authored
    Demotion will migrate pages across nodes.  Previously, only the global
    demotion statistics were accounted for.  Changed them to per-node
    statistics, making it easier to observe where demotion occurs on each
    node.
    
    This will help to identify which nodes are under pressure.
    
    This patch also make pgdemote_* behind CONFIG_NUMA_BALANCING, since
    demotion is not available for !CONFIG_NUMA_BALANCING
    
    With this patch, here is a sample where node0 node1 are DRAM,
    node3 is PMEM:
    Global stats:
    $ grep demote /proc/vmstat
    pgdemote_kswapd 254288
    pgdemote_direct 113497
    pgdemote_khugepaged 0
    
    Per-node stats:
    $ grep demote /sys/devices/system/node/node0/vmstat # demotion source
    pgdemote_kswapd 68454
    pgdemote_direct 83431
    pgdemote_khugepaged 0
    $ grep demote /sys/devices/system/node/node1/vmstat # demotion source
    pgdemote_kswapd 185834
    pgdemote_direct 30066
    pgdemote_khugepaged 0
    $ grep demote /sys/devices/system/node/node3/vmstat # demotion target
    pgdemote_kswapd 0
    pgdemote_direct 0
    pgdemote_khugepaged 0
    
    Link: https://lkml.kernel.org/r/20231103031450.1456523-1-lizhijian@fujitsu.comSigned-off-by: default avatarLi Zhijian <lizhijian@fujitsu.com>
    Acked-by: default avatar"Huang, Ying" <ying.huang@intel.com>
    Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Cc: "Rafael J. Wysocki" <rafael@kernel.org>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    23e9f013
vmstat.c 55.6 KB