[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [RFC Patch v4 7/8] x86/hvm: bump the number of pages of shadow memory
Each vcpu of hvm guest consumes at least one shadow page. Currently, only 256 (for hap case) pages are pre-allocated as shadow memory at beginning. It would run out if guest has more than 256 vcpus and guest creation fails. Bump the number of shadow pages to 2 * HVM_MAX_VCPUS for hap case and 8 * HVM_MAX_VCPUS for shadow case. This patch won't lead to more memory consumption for the size of shadow memory will be adjusted via XEN_DOMCTL_SHADOW_OP_SET_ALLOCATION according to the size of guest memory and the number of vcpus. Signed-off-by: Chao Gao <chao.gao@xxxxxxxxx> --- xen/arch/x86/mm/hap/hap.c | 2 +- xen/arch/x86/mm/shadow/common.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/mm/hap/hap.c b/xen/arch/x86/mm/hap/hap.c index 41deb90..f4cf578 100644 --- a/xen/arch/x86/mm/hap/hap.c +++ b/xen/arch/x86/mm/hap/hap.c @@ -455,7 +455,7 @@ int hap_enable(struct domain *d, u32 mode) if ( old_pages == 0 ) { paging_lock(d); - rv = hap_set_allocation(d, 256, NULL); + rv = hap_set_allocation(d, 2 * HVM_MAX_VCPUS, NULL); if ( rv != 0 ) { hap_set_allocation(d, 0, NULL); diff --git a/xen/arch/x86/mm/shadow/common.c b/xen/arch/x86/mm/shadow/common.c index 72c674e..5e66603 100644 --- a/xen/arch/x86/mm/shadow/common.c +++ b/xen/arch/x86/mm/shadow/common.c @@ -3093,7 +3093,7 @@ int shadow_enable(struct domain *d, u32 mode) if ( old_pages == 0 ) { paging_lock(d); - rv = shadow_set_allocation(d, 1024, NULL); /* Use at least 4MB */ + rv = shadow_set_allocation(d, 8 * HVM_MAX_VCPUS, NULL); if ( rv != 0 ) { shadow_set_allocation(d, 0, NULL); -- 1.8.3.1 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |