[PATCH 8/8] KVM: PPC: Add hugepage support for IOMMU in-kernel handling
Scott Wood
scottwood at freescale.com
Fri Jun 28 04:39:23 EST 2013
On 06/27/2013 12:02:36 AM, Alexey Kardashevskiy wrote:
> +/*
> + * The KVM guest can be backed with 16MB pages.
> + * In this case, we cannot do page counting from the real mode
> + * as the compound pages are used - they are linked in a list
> + * with pointers as virtual addresses which are inaccessible
> + * in real mode.
> + *
> + * The code below keeps a 16MB pages list and uses page struct
> + * in real mode if it is already locked in RAM and inserted into
> + * the list or switches to the virtual mode where it can be
> + * handled in a usual manner.
> + */
> +#define KVMPPC_HUGEPAGE_HASH(gpa) hash_32(gpa >> 24, 32)
> +
> +struct kvmppc_iommu_hugepage {
> + struct hlist_node hash_node;
> + unsigned long gpa; /* Guest physical address */
> + unsigned long hpa; /* Host physical address */
> + struct page *page; /* page struct of the very first
> subpage */
> + unsigned long size; /* Huge page size (always 16MB at the
> moment) */
> +};
Shouldn't this be namespaced to something like "book3s" or "spapr"?
-Scott
More information about the Linuxppc-dev
mailing list