]> bbs.cooldavid.org Git - net-next-2.6.git/commitdiff
powerpc: Correct page-in counter for CMM with 64k pages
authorRobert Jennings <rcj@linux.vnet.ibm.com>
Fri, 14 Nov 2008 12:07:34 +0000 (12:07 +0000)
committerPaul Mackerras <paulus@samba.org>
Wed, 19 Nov 2008 05:05:05 +0000 (16:05 +1100)
Linux will report the number of page-ins so that the hypervisor can
better determine partition memory pressure.  The hardware page size
and the OS page size can be different.  In the case where the hardware
page size is 4k and the OS is running with 64k pages the code in
commit 409001948d9f221c94a61c3ee96de112755fc04d ("powerpc: Update
page-in counter for CMM") would under-report the number of pages.

This corrects the reporting to the hypervisor by incrementing the
page_in count by 1 << PAGE_FACTOR each time.

Reported-by: Andrew Theurer <habanero@linux.vnet.ibm.com>
Signed-off-by: Robert Jennings <rcj@linux.vnet.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
arch/powerpc/mm/fault.c

index b18bc0f023c8793adc5bc159f015e32042e2195f..7df0409107ad6067835af13f6629603adff70ece 100644 (file)
@@ -324,7 +324,7 @@ good_area:
 #ifdef CONFIG_PPC_SMLPAR
                if (firmware_has_feature(FW_FEATURE_CMO)) {
                        preempt_disable();
-                       get_lppaca()->page_ins++;
+                       get_lppaca()->page_ins += (1 << PAGE_FACTOR);
                        preempt_enable();
                }
 #endif