Commit b09eb1c0 authored by Nick Piggin's avatar Nick Piggin Committed by Linus Torvalds

[PATCH] mm: page_state opt docs

Comment the new locking rules for page_state statistics.
Signed-off-by: default avatarNick Piggin <npiggin@suse.de>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent a74609fa
...@@ -79,13 +79,23 @@ ...@@ -79,13 +79,23 @@
/* /*
* Global page accounting. One instance per CPU. Only unsigned longs are * Global page accounting. One instance per CPU. Only unsigned longs are
* allowed. * allowed.
*
* - Fields can be modified with xxx_page_state and xxx_page_state_zone at
* any time safely (which protects the instance from modification by
* interrupt.
* - The __xxx_page_state variants can be used safely when interrupts are
* disabled.
* - The __xxx_page_state variants can be used if the field is only
* modified from process context, or only modified from interrupt context.
* In this case, the field should be commented here.
*/ */
struct page_state { struct page_state {
unsigned long nr_dirty; /* Dirty writeable pages */ unsigned long nr_dirty; /* Dirty writeable pages */
unsigned long nr_writeback; /* Pages under writeback */ unsigned long nr_writeback; /* Pages under writeback */
unsigned long nr_unstable; /* NFS unstable pages */ unsigned long nr_unstable; /* NFS unstable pages */
unsigned long nr_page_table_pages;/* Pages used for pagetables */ unsigned long nr_page_table_pages;/* Pages used for pagetables */
unsigned long nr_mapped; /* mapped into pagetables */ unsigned long nr_mapped; /* mapped into pagetables.
* only modified from process context */
unsigned long nr_slab; /* In slab */ unsigned long nr_slab; /* In slab */
#define GET_PAGE_STATE_LAST nr_slab #define GET_PAGE_STATE_LAST nr_slab
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment