[PATCH] revert "mm: page_state fixes"
authorAndrew Morton <akpm@osdl.org>
Sun, 8 Jan 2006 09:00:28 +0000 (01:00 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Mon, 9 Jan 2006 04:12:38 +0000 (20:12 -0800)
Hugh says:

page_alloc_cpu_notify() specifically contains code to

  /* Add dead cpu's page_states to our own. */

which handles this more efficiently.

Cc: Hugh Dickins <hugh@veritas.com>
Cc: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
mm/page_alloc.c

index fd47494cb9890b887c55dbd76831819b1c5c645c..0b98f428b07b9684d67a847552cc946f6eb91a74 100644 (file)
@@ -1204,6 +1204,7 @@ static void __get_page_state(struct page_state *ret, int nr, cpumask_t *cpumask)
        int cpu = 0;
 
        memset(ret, 0, sizeof(*ret));
+       cpus_and(*cpumask, *cpumask, cpu_online_map);
 
        cpu = first_cpu(*cpumask);
        while (cpu < NR_CPUS) {
@@ -1256,7 +1257,7 @@ unsigned long read_page_state_offset(unsigned long offset)
        unsigned long ret = 0;
        int cpu;
 
-       for_each_cpu(cpu) {
+       for_each_online_cpu(cpu) {
                unsigned long in;
 
                in = (unsigned long)&per_cpu(page_states, cpu) + offset;