mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 04:18:39 +08:00
mm: add system wide stats items category
/proc/vmstat contains events and stats, events can only grow, but stats
can grow and shrink.
vmstat has the following:
-------------------------
NR_VM_ZONE_STAT_ITEMS: per-zone stats
NR_VM_NUMA_EVENT_ITEMS: per-numa events
NR_VM_NODE_STAT_ITEMS: per-numa stats
NR_VM_WRITEBACK_STAT_ITEMS: system-wide background-writeback and
dirty-throttling tresholds.
NR_VM_EVENT_ITEMS: system-wide events
-------------------------
Rename NR_VM_WRITEBACK_STAT_ITEMS to NR_VM_STAT_ITEMS, to track the
system-wide stats, we are going to add per-page metadata stats to this
category in the next patch.
Also delete unused writeback_stat_name().
Link: https://lkml.kernel.org/r/20240809191020.1142142-2-pasha.tatashin@soleen.com
Link: https://lkml.kernel.org/r/20240808213437.682006-3-pasha.tatashin@soleen.com
Fixes: 15995a3524
("mm: report per-page metadata information")
Signed-off-by: Pasha Tatashin <pasha.tatashin@soleen.com>
Suggested-by: Yosry Ahmed <yosryahmed@google.com>
Tested-by: Alison Schofield <alison.schofield@intel.com>
Acked-by: David Hildenbrand <david@redhat.com>
Acked-by: David Rientjes <rientjes@google.com>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Domenico Cerasuolo <cerasuolodomenico@gmail.com>
Cc: Joel Granados <j.granados@samsung.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Li Zhijian <lizhijian@fujitsu.com>
Cc: Matthew Wilcox (Oracle) <willy@infradead.org>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Muchun Song <muchun.song@linux.dev>
Cc: Nhat Pham <nphamcs@gmail.com>
Cc: Sourav Panda <souravpanda@google.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Yi Zhang <yi.zhang@redhat.com>
Cc: Fan Ni <fan.ni@samsung.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
ace0741a55
commit
f4cb78af91
@ -34,10 +34,11 @@ struct reclaim_stat {
|
||||
unsigned nr_lazyfree_fail;
|
||||
};
|
||||
|
||||
enum writeback_stat_item {
|
||||
/* Stat data for system wide items */
|
||||
enum vm_stat_item {
|
||||
NR_DIRTY_THRESHOLD,
|
||||
NR_DIRTY_BG_THRESHOLD,
|
||||
NR_VM_WRITEBACK_STAT_ITEMS,
|
||||
NR_VM_STAT_ITEMS,
|
||||
};
|
||||
|
||||
#ifdef CONFIG_VM_EVENT_COUNTERS
|
||||
@ -514,21 +515,13 @@ static inline const char *lru_list_name(enum lru_list lru)
|
||||
return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
|
||||
}
|
||||
|
||||
static inline const char *writeback_stat_name(enum writeback_stat_item item)
|
||||
{
|
||||
return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
|
||||
NR_VM_NUMA_EVENT_ITEMS +
|
||||
NR_VM_NODE_STAT_ITEMS +
|
||||
item];
|
||||
}
|
||||
|
||||
#if defined(CONFIG_VM_EVENT_COUNTERS) || defined(CONFIG_MEMCG)
|
||||
static inline const char *vm_event_name(enum vm_event_item item)
|
||||
{
|
||||
return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
|
||||
NR_VM_NUMA_EVENT_ITEMS +
|
||||
NR_VM_NODE_STAT_ITEMS +
|
||||
NR_VM_WRITEBACK_STAT_ITEMS +
|
||||
NR_VM_STAT_ITEMS +
|
||||
item];
|
||||
}
|
||||
#endif /* CONFIG_VM_EVENT_COUNTERS || CONFIG_MEMCG */
|
||||
|
@ -1257,7 +1257,7 @@ const char * const vmstat_text[] = {
|
||||
"pgdemote_khugepaged",
|
||||
"nr_memmap",
|
||||
"nr_memmap_boot",
|
||||
/* enum writeback_stat_item counters */
|
||||
/* system-wide enum vm_stat_item counters */
|
||||
"nr_dirty_threshold",
|
||||
"nr_dirty_background_threshold",
|
||||
|
||||
@ -1790,7 +1790,7 @@ static const struct seq_operations zoneinfo_op = {
|
||||
#define NR_VMSTAT_ITEMS (NR_VM_ZONE_STAT_ITEMS + \
|
||||
NR_VM_NUMA_EVENT_ITEMS + \
|
||||
NR_VM_NODE_STAT_ITEMS + \
|
||||
NR_VM_WRITEBACK_STAT_ITEMS + \
|
||||
NR_VM_STAT_ITEMS + \
|
||||
(IS_ENABLED(CONFIG_VM_EVENT_COUNTERS) ? \
|
||||
NR_VM_EVENT_ITEMS : 0))
|
||||
|
||||
@ -1827,7 +1827,7 @@ static void *vmstat_start(struct seq_file *m, loff_t *pos)
|
||||
|
||||
global_dirty_limits(v + NR_DIRTY_BG_THRESHOLD,
|
||||
v + NR_DIRTY_THRESHOLD);
|
||||
v += NR_VM_WRITEBACK_STAT_ITEMS;
|
||||
v += NR_VM_STAT_ITEMS;
|
||||
|
||||
#ifdef CONFIG_VM_EVENT_COUNTERS
|
||||
all_vm_events(v);
|
||||
|
Loading…
Reference in New Issue
Block a user