Subject: [PATCH V2 2/2] KVM: arm64: Increase number of user memslots to 508

From: [email-masked] (Christoffer Dall)
Date: Thu, 23 Feb 2017 11:14:07 +0100

On Wed, Feb 08, 2017 at 12:45:41PM +0530, linucherian at gmail.com wrote:
> From: Linu Cherian <[email-masked]>
> 
> Having only 32 memslots is a real constraint for the maximum
> number of PCI devices that can be assigned to a single guest.
> Assuming each PCI device/virtual function having two memory BAR
> regions, we could assign only 15 devices/virtual functions to a
> guest.
> 
> Hence increase KVM_USER_MEM_SLOTS to 508, so that KVM_MEM_SLOTS_NUM is
> 512 as done in other archs like x86 and powerpc.

Actually on powerpc they just define KVM_USER_MEM_SLOTS as 512 directly.

On x86 they define them as 509 and have 3 private mem slots.

I don't understand the difference and as far as I can tell we don't have
any private memslots on arm/arm64, so this is just weird to me.

Thanks,
-Christoffer

> 
> Signed-off-by: Linu Cherian <[email-masked]>
> ---
>  arch/arm64/include/asm/kvm_host.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/arm64/include/asm/kvm_host.h b/arch/arm64/include/asm/kvm_host.h
> index e505038..88f017d 100644
> --- a/arch/arm64/include/asm/kvm_host.h
> +++ b/arch/arm64/include/asm/kvm_host.h
> @@ -30,7 +30,7 @@
>  
>  #define __KVM_HAVE_ARCH_INTC_INITIALIZED
>  
> -#define KVM_USER_MEM_SLOTS 32
> +#define KVM_USER_MEM_SLOTS 508
>  #define KVM_PRIVATE_MEM_SLOTS 4
>  #define KVM_COALESCED_MMIO_PAGE_OFFSET 1
>  #define KVM_HALT_POLL_NS_DEFAULT 500000
> -- 
> 1.9.1
>