summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAndrew Morton <akpm@digeo.com>2002-12-14 03:17:42 -0800
committerJaroslav Kysela <perex@suse.cz>2002-12-14 03:17:42 -0800
commitc720c50a1411bebdf590b4a86675acd355f0508b (patch)
treea9fee1c46791337a249a694b6b2c1bc6b44f3f5e /include
parent54cbdcfd7ba9d02e35e48abae3e5988d3f0ddfdd (diff)
[PATCH] vm accounting fixes and addition
- /proc/vmstat:pageoutrun and /proc/vmstat:allocstall are always identical. Rework this so that - "allocstall" is the number of times a page allocator ran diect reclaim - "pageoutrun" is the number of times kswapd ran page reclaim - Add a new stat: "pgrotated". The number of pages which were rotated to the tail of the LRU for immediate reclaim by rotate_reclaimable_page(). - Document things a bit.
Diffstat (limited to 'include')
-rw-r--r--include/linux/page-flags.h47
1 files changed, 24 insertions, 23 deletions
diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h
index 7018961aea91..a50e09ff79ea 100644
--- a/include/linux/page-flags.h
+++ b/include/linux/page-flags.h
@@ -79,35 +79,36 @@
* allowed.
*/
struct page_state {
- unsigned long nr_dirty;
- unsigned long nr_writeback;
- unsigned long nr_pagecache;
- unsigned long nr_page_table_pages;
- unsigned long nr_reverse_maps;
- unsigned long nr_mapped;
- unsigned long nr_slab;
+ unsigned long nr_dirty; /* Dirty writeable pages */
+ unsigned long nr_writeback; /* Pages under writeback */
+ unsigned long nr_pagecache; /* Pages in pagecache */
+ unsigned long nr_page_table_pages;/* Pages used for pagetables */
+ unsigned long nr_reverse_maps; /* includes PageDirect */
+ unsigned long nr_mapped; /* mapped into pagetables */
+ unsigned long nr_slab; /* In slab */
#define GET_PAGE_STATE_LAST nr_slab
/*
* The below are zeroed by get_page_state(). Use get_full_page_state()
* to add up all these.
*/
- unsigned long pgpgin;
- unsigned long pgpgout;
- unsigned long pswpin;
- unsigned long pswpout;
- unsigned long pgalloc;
- unsigned long pgfree;
- unsigned long pgactivate;
- unsigned long pgdeactivate;
- unsigned long pgfault;
- unsigned long pgmajfault;
- unsigned long pgscan;
- unsigned long pgrefill;
- unsigned long pgsteal;
- unsigned long kswapd_steal;
- unsigned long pageoutrun;
- unsigned long allocstall;
+ unsigned long pgpgin; /* Disk reads */
+ unsigned long pgpgout; /* Disk writes */
+ unsigned long pswpin; /* swap reads */
+ unsigned long pswpout; /* swap writes */
+ unsigned long pgalloc; /* page allocations */
+ unsigned long pgfree; /* page freeings */
+ unsigned long pgactivate; /* pages moved inactive->active */
+ unsigned long pgdeactivate; /* pages moved active->inactive */
+ unsigned long pgfault; /* faults (major+minor) */
+ unsigned long pgmajfault; /* faults (major only) */
+ unsigned long pgscan; /* pages scanned by page reclaim */
+ unsigned long pgrefill; /* inspected in refill_inactive_zone */
+ unsigned long pgsteal; /* total pages reclaimed */
+ unsigned long kswapd_steal; /* pages reclaimed by kswapd */
+ unsigned long pageoutrun; /* kswapd's calls to page reclaim */
+ unsigned long allocstall; /* direct reclaim calls */
+ unsigned long pgrotated; /* pages rotated to tail of the LRU */
} ____cacheline_aligned;
DECLARE_PER_CPU(struct page_state, page_states);