|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen master] x86: widen NUMA nodes to be allocated from
commit 4e59089ed90a11b9e30e67191789293bb07af686
Author: Jan Beulich <jbeulich@xxxxxxxx>
AuthorDate: Fri Mar 6 17:28:54 2015 +0100
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Fri Mar 6 17:28:54 2015 +0100
x86: widen NUMA nodes to be allocated from
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
Reviewed-by: Dario Faggioli <dario.faggioli@xxxxxxxxxx>
Reviewed-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
---
xen/arch/x86/domain.c | 5 +++--
xen/arch/x86/domain_build.c | 2 +-
xen/arch/x86/domctl.c | 2 +-
xen/arch/x86/hvm/stdvga.c | 2 +-
xen/arch/x86/hvm/vlapic.c | 3 +--
xen/arch/x86/mm.c | 11 +++++------
xen/arch/x86/mm/hap/hap.c | 2 +-
xen/arch/x86/mm/shadow/common.c | 2 +-
8 files changed, 14 insertions(+), 15 deletions(-)
diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c
index 21f0766..04c1898 100644
--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -285,7 +285,8 @@ struct vcpu_guest_context *alloc_vcpu_guest_context(void)
for ( i = 0; i < PFN_UP(sizeof(struct vcpu_guest_context)); ++i )
{
- struct page_info *pg = alloc_domheap_page(NULL, 0);
+ struct page_info *pg = alloc_domheap_page(current->domain,
+ MEMF_no_owner);
if ( unlikely(pg == NULL) )
{
@@ -322,7 +323,7 @@ static int setup_compat_l4(struct vcpu *v)
l4_pgentry_t *l4tab;
int rc;
- pg = alloc_domheap_page(NULL, MEMF_node(vcpu_to_node(v)));
+ pg = alloc_domheap_page(v->domain, MEMF_no_owner);
if ( pg == NULL )
return -ENOMEM;
diff --git a/xen/arch/x86/domain_build.c b/xen/arch/x86/domain_build.c
index 6d7a592..e5c845c 100644
--- a/xen/arch/x86/domain_build.c
+++ b/xen/arch/x86/domain_build.c
@@ -1194,7 +1194,7 @@ int __init construct_dom0(
}
else
{
- page = alloc_domheap_page(NULL, 0);
+ page = alloc_domheap_page(d, MEMF_no_owner);
if ( !page )
panic("Not enough RAM for domain 0 PML4");
page->u.inuse.type_info = PGT_l4_page_table|PGT_validated|1;
diff --git a/xen/arch/x86/domctl.c b/xen/arch/x86/domctl.c
index a1c5db0..3e5bef1 100644
--- a/xen/arch/x86/domctl.c
+++ b/xen/arch/x86/domctl.c
@@ -150,7 +150,7 @@ long arch_do_domctl(
break;
}
- page = alloc_domheap_page(NULL, 0);
+ page = alloc_domheap_page(current->domain, MEMF_no_owner);
if ( !page )
{
ret = -ENOMEM;
diff --git a/xen/arch/x86/hvm/stdvga.c b/xen/arch/x86/hvm/stdvga.c
index 060512a..13d1029 100644
--- a/xen/arch/x86/hvm/stdvga.c
+++ b/xen/arch/x86/hvm/stdvga.c
@@ -604,7 +604,7 @@ void stdvga_init(struct domain *d)
for ( i = 0; i != ARRAY_SIZE(s->vram_page); i++ )
{
- pg = alloc_domheap_page(NULL, MEMF_node(domain_to_node(d)));
+ pg = alloc_domheap_page(d, MEMF_no_owner);
if ( pg == NULL )
break;
s->vram_page[i] = pg;
diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c
index cee8699..92b0fa8 100644
--- a/xen/arch/x86/hvm/vlapic.c
+++ b/xen/arch/x86/hvm/vlapic.c
@@ -1417,7 +1417,6 @@ HVM_REGISTER_SAVE_RESTORE(LAPIC_REGS, lapic_save_regs,
lapic_load_regs,
int vlapic_init(struct vcpu *v)
{
struct vlapic *vlapic = vcpu_vlapic(v);
- unsigned int memflags = MEMF_node(vcpu_to_node(v));
HVM_DBG_LOG(DBG_LEVEL_VLAPIC, "%d", v->vcpu_id);
@@ -1431,7 +1430,7 @@ int vlapic_init(struct vcpu *v)
if (vlapic->regs_page == NULL)
{
- vlapic->regs_page = alloc_domheap_page(NULL, memflags);
+ vlapic->regs_page = alloc_domheap_page(v->domain, MEMF_no_owner);
if ( vlapic->regs_page == NULL )
{
dprintk(XENLOG_ERR, "alloc vlapic regs error: %d/%d\n",
diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index ca5369a..45acfb5 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -5883,7 +5883,6 @@ int create_perdomain_mapping(struct domain *d, unsigned
long va,
l3_pgentry_t *l3tab;
l2_pgentry_t *l2tab;
l1_pgentry_t *l1tab;
- unsigned int memf = MEMF_node(domain_to_node(d));
int rc = 0;
ASSERT(va >= PERDOMAIN_VIRT_START &&
@@ -5891,7 +5890,7 @@ int create_perdomain_mapping(struct domain *d, unsigned
long va,
if ( !d->arch.perdomain_l3_pg )
{
- pg = alloc_domheap_page(NULL, MEMF_node(domain_to_node(d)));
+ pg = alloc_domheap_page(d, MEMF_no_owner);
if ( !pg )
return -ENOMEM;
l3tab = __map_domain_page(pg);
@@ -5912,7 +5911,7 @@ int create_perdomain_mapping(struct domain *d, unsigned
long va,
if ( !(l3e_get_flags(l3tab[l3_table_offset(va)]) & _PAGE_PRESENT) )
{
- pg = alloc_domheap_page(NULL, memf);
+ pg = alloc_domheap_page(d, MEMF_no_owner);
if ( !pg )
{
unmap_domain_page(l3tab);
@@ -5941,7 +5940,7 @@ int create_perdomain_mapping(struct domain *d, unsigned
long va,
{
if ( pl1tab && !IS_NIL(pl1tab) )
{
- l1tab = alloc_xenheap_pages(0, memf);
+ l1tab = alloc_xenheap_pages(0, MEMF_node(domain_to_node(d)));
if ( !l1tab )
{
rc = -ENOMEM;
@@ -5953,7 +5952,7 @@ int create_perdomain_mapping(struct domain *d, unsigned
long va,
}
else
{
- pg = alloc_domheap_page(NULL, memf);
+ pg = alloc_domheap_page(d, MEMF_no_owner);
if ( !pg )
{
rc = -ENOMEM;
@@ -5970,7 +5969,7 @@ int create_perdomain_mapping(struct domain *d, unsigned
long va,
if ( ppg &&
!(l1e_get_flags(l1tab[l1_table_offset(va)]) & _PAGE_PRESENT) )
{
- pg = alloc_domheap_page(NULL, memf);
+ pg = alloc_domheap_page(d, MEMF_no_owner);
if ( pg )
{
clear_domain_page(page_to_mfn(pg));
diff --git a/xen/arch/x86/mm/hap/hap.c b/xen/arch/x86/mm/hap/hap.c
index 97f5168..4ecb2e2 100644
--- a/xen/arch/x86/mm/hap/hap.c
+++ b/xen/arch/x86/mm/hap/hap.c
@@ -331,7 +331,7 @@ hap_set_allocation(struct domain *d, unsigned int pages,
int *preempted)
if ( d->arch.paging.hap.total_pages < pages )
{
/* Need to allocate more memory from domheap */
- pg = alloc_domheap_page(NULL, MEMF_node(domain_to_node(d)));
+ pg = alloc_domheap_page(d, MEMF_no_owner);
if ( pg == NULL )
{
HAP_PRINTK("failed to allocate hap pages.\n");
diff --git a/xen/arch/x86/mm/shadow/common.c b/xen/arch/x86/mm/shadow/common.c
index 01bc750..2e43d6d 100644
--- a/xen/arch/x86/mm/shadow/common.c
+++ b/xen/arch/x86/mm/shadow/common.c
@@ -1677,7 +1677,7 @@ static unsigned int sh_set_allocation(struct domain *d,
{
/* Need to allocate more memory from domheap */
sp = (struct page_info *)
- alloc_domheap_page(NULL, MEMF_node(domain_to_node(d)));
+ alloc_domheap_page(d, MEMF_no_owner);
if ( sp == NULL )
{
SHADOW_PRINTK("failed to allocate shadow pages.\n");
--
generated by git-patchbot for /home/xen/git/xen.git#master
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |