ANDROID: KVM: arm64: iommu: Allow donations from a CMA pool
PAGE_SIZE donations are fragmenting the host stage-2's (CPU and IOMMU).
This can damage the entire system performance. A CMA region can help to
mitigate this effect by allocating PMD_SIZE, PMD_SIZE-aligned donations
which will save one stage-2 page-table level.
The pKVM IOMMU framework only supports up to 16 block donations. They
are coming from a "pkvm,cma" reserved memory region which can be
declared as follow:
pkvm_cma {
compatible = "pkvm,cma", "shared-dma-pool";
size = <0x0 0x800000>;
reusable;
};
Bug: 383901011
Bug: 277989609
Bug: 278749606
Change-Id: Icdef167c596868c2355a3be48b3aa46bb6a8c55d
Signed-off-by:
Vincent Donnefort <vdonnefort@google.com>
Loading
Please sign in to comment