KVM: PPC: Keep page physical addresses in per-slot arrays
authorPaul Mackerras <paulus@samba.org>
Mon, 12 Dec 2011 12:28:21 +0000 (12:28 +0000)
committerAvi Kivity <avi@redhat.com>
Mon, 5 Mar 2012 12:52:35 +0000 (14:52 +0200)
This allocates an array for each memory slot that is added to store
the physical addresses of the pages in the slot.  This array is
vmalloc'd and accessed in kvmppc_h_enter using real_vmalloc_addr().
This allows us to remove the ram_pginfo field from the kvm_arch
struct, and removes the 64GB guest RAM limit that we had.

We use the low-order bits of the array entries to store a flag
indicating that we have done get_page on the corresponding page,
and therefore need to call put_page when we are finished with the
page.  Currently this is set for all pages except those in our
special RMO regions.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Avi Kivity <avi@redhat.com>

No differences found