powerpc: Correct page-in counter for CMM with 64k pages

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 409001948d ("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>
This commit is contained in:
Robert Jennings 2008-11-14 12:07:34 +00:00 committed by Paul Mackerras
parent 22059a90b8
commit a6326e98a2

View File

@ -324,7 +324,7 @@ int __kprobes do_page_fault(struct pt_regs *regs, unsigned long address,
#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