git://ftp.safe.ca
/
safe
/
jmp
/
linux-2.6
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
blkdev: generalize flags for blkdev_issue_fn functions
[safe/jmp/linux-2.6]
/
mm
/
vmstat.c
diff --git
a/mm/vmstat.c
b/mm/vmstat.c
index
6051fba
..
fa12ea3
100644
(file)
--- a/
mm/vmstat.c
+++ b/
mm/vmstat.c
@@
-12,6
+12,7
@@
#include <linux/mm.h>
#include <linux/err.h>
#include <linux/module.h>
#include <linux/mm.h>
#include <linux/err.h>
#include <linux/module.h>
+#include <linux/slab.h>
#include <linux/cpu.h>
#include <linux/vmstat.h>
#include <linux/sched.h>
#include <linux/cpu.h>
#include <linux/vmstat.h>
#include <linux/sched.h>
@@
-139,7
+140,8
@@
static void refresh_zone_stat_thresholds(void)
threshold = calculate_threshold(zone);
for_each_online_cpu(cpu)
threshold = calculate_threshold(zone);
for_each_online_cpu(cpu)
- zone_pcp(zone, cpu)->stat_threshold = threshold;
+ per_cpu_ptr(zone->pageset, cpu)->stat_threshold
+ = threshold;
}
}
}
}
@@
-149,7
+151,8
@@
static void refresh_zone_stat_thresholds(void)
void __mod_zone_page_state(struct zone *zone, enum zone_stat_item item,
int delta)
{
void __mod_zone_page_state(struct zone *zone, enum zone_stat_item item,
int delta)
{
- struct per_cpu_pageset *pcp = zone_pcp(zone, smp_processor_id());
+ struct per_cpu_pageset *pcp = this_cpu_ptr(zone->pageset);
+
s8 *p = pcp->vm_stat_diff + item;
long x;
s8 *p = pcp->vm_stat_diff + item;
long x;
@@
-202,7
+205,7
@@
EXPORT_SYMBOL(mod_zone_page_state);
*/
void __inc_zone_state(struct zone *zone, enum zone_stat_item item)
{
*/
void __inc_zone_state(struct zone *zone, enum zone_stat_item item)
{
- struct per_cpu_pageset *pcp =
zone_pcp(zone, smp_processor_id()
);
+ struct per_cpu_pageset *pcp =
this_cpu_ptr(zone->pageset
);
s8 *p = pcp->vm_stat_diff + item;
(*p)++;
s8 *p = pcp->vm_stat_diff + item;
(*p)++;
@@
-223,7
+226,7
@@
EXPORT_SYMBOL(__inc_zone_page_state);
void __dec_zone_state(struct zone *zone, enum zone_stat_item item)
{
void __dec_zone_state(struct zone *zone, enum zone_stat_item item)
{
- struct per_cpu_pageset *pcp =
zone_pcp(zone, smp_processor_id()
);
+ struct per_cpu_pageset *pcp =
this_cpu_ptr(zone->pageset
);
s8 *p = pcp->vm_stat_diff + item;
(*p)--;
s8 *p = pcp->vm_stat_diff + item;
(*p)--;
@@
-300,7
+303,7
@@
void refresh_cpu_vm_stats(int cpu)
for_each_populated_zone(zone) {
struct per_cpu_pageset *p;
for_each_populated_zone(zone) {
struct per_cpu_pageset *p;
- p =
zone_pcp(zone
, cpu);
+ p =
per_cpu_ptr(zone->pageset
, cpu);
for (i = 0; i < NR_VM_ZONE_STAT_ITEMS; i++)
if (p->vm_stat_diff[i]) {
for (i = 0; i < NR_VM_ZONE_STAT_ITEMS; i++)
if (p->vm_stat_diff[i]) {
@@
-741,7
+744,7
@@
static void zoneinfo_show_print(struct seq_file *m, pg_data_t *pgdat,
for_each_online_cpu(i) {
struct per_cpu_pageset *pageset;
for_each_online_cpu(i) {
struct per_cpu_pageset *pageset;
- pageset =
zone_pcp(zone
, i);
+ pageset =
per_cpu_ptr(zone->pageset
, i);
seq_printf(m,
"\n cpu: %i"
"\n count: %i"
seq_printf(m,
"\n cpu: %i"
"\n count: %i"
@@
-761,7
+764,7
@@
static void zoneinfo_show_print(struct seq_file *m, pg_data_t *pgdat,
"\n prev_priority: %i"
"\n start_pfn: %lu"
"\n inactive_ratio: %u",
"\n prev_priority: %i"
"\n start_pfn: %lu"
"\n inactive_ratio: %u",
-
zone_is_all_unreclaimable(zone)
,
+
zone->all_unreclaimable
,
zone->prev_priority,
zone->zone_start_pfn,
zone->inactive_ratio);
zone->prev_priority,
zone->zone_start_pfn,
zone->inactive_ratio);
@@
-906,6
+909,7
@@
static int __cpuinit vmstat_cpuup_callback(struct notifier_block *nfb,
case CPU_ONLINE:
case CPU_ONLINE_FROZEN:
start_cpu_timer(cpu);
case CPU_ONLINE:
case CPU_ONLINE_FROZEN:
start_cpu_timer(cpu);
+ node_set_state(cpu_to_node(cpu), N_CPU);
break;
case CPU_DOWN_PREPARE:
case CPU_DOWN_PREPARE_FROZEN:
break;
case CPU_DOWN_PREPARE:
case CPU_DOWN_PREPARE_FROZEN: