summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristoph Lameter <clameter@sgi.com>2006-07-10 04:44:30 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2006-07-10 13:24:18 -0700
commit7f4599e9cd6bca0efc1000359584d1cff68f9f13 (patch)
tree63a02f7d0574d8bab3ec96657ae30985fcbb88e3
parent06a9ec291b3aec9c7e36af0a10ad2b556bd7e84f (diff)
downloadlinux-7f4599e9cd6bca0efc1000359584d1cff68f9f13.tar.bz2
[PATCH] ZVC: add __inc_zone_state for !SMP configuration
It turns out that there is a way to build a kernel with NUMA and no SMP. In that case we are missing one definition __inc_zone_state. Provide that missing __inc_zone_state. (akpm: NUMA && !SMP sounds odd, but I am told "But there is the concept of cpuless nodes. A NUMA system without SMP has a single processor but multiple memory nodes. This used to work before on IA64 (wasn't aware of it, never seen anyone with this kind of thing).") Acked-by: Tony Luck <tony.luck@intel.com> Signed-off-by: Christoph Lameter <clameter@sgi.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--include/linux/vmstat.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/include/linux/vmstat.h b/include/linux/vmstat.h
index d673b7b15c34..1ab806c47514 100644
--- a/include/linux/vmstat.h
+++ b/include/linux/vmstat.h
@@ -186,11 +186,16 @@ static inline void __mod_zone_page_state(struct zone *zone,
zone_page_state_add(delta, zone, item);
}
+static inline void __inc_zone_state(struct zone *zone, enum zone_stat_item item)
+{
+ atomic_long_inc(&zone->vm_stat[item]);
+ atomic_long_inc(&vm_stat[item]);
+}
+
static inline void __inc_zone_page_state(struct page *page,
enum zone_stat_item item)
{
- atomic_long_inc(&page_zone(page)->vm_stat[item]);
- atomic_long_inc(&vm_stat[item]);
+ __inc_zone_state(page_zone(page), item);
}
static inline void __dec_zone_page_state(struct page *page,