[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] Even 'dummy' domains (e.g., dom_xen a.k.a. DOMID_XEN) must have valid I/O caps.
# HG changeset patch # User Keir Fraser <keir.fraser@xxxxxxxxxx> # Date 1273741742 -3600 # Node ID 1ec412805622fd7ec0e88bf3b7ab681d024994bc # Parent 6c22d2dfed4882d5febf98d2afbb96ec9bedd043 Even 'dummy' domains (e.g., dom_xen a.k.a. DOMID_XEN) must have valid I/O caps. Ensure the rangesets are always initialised. Certain (privileged) invocations of hypercalls such as mmu_update can end up interrogating these special domains for possible I/O capabilities. Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx> --- xen/common/domain.c | 16 ++++++++-------- 1 files changed, 8 insertions(+), 8 deletions(-) diff -r 6c22d2dfed48 -r 1ec412805622 xen/common/domain.c --- a/xen/common/domain.c Thu May 13 09:44:20 2010 +0100 +++ b/xen/common/domain.c Thu May 13 10:09:02 2010 +0100 @@ -248,11 +248,16 @@ struct domain *domain_create( d->disable_migrate = 1; } + rangeset_domain_initialise(d); + init_status |= INIT_rangeset; + + d->iomem_caps = rangeset_new(d, "I/O Memory", RANGESETF_prettyprint_hex); + d->irq_caps = rangeset_new(d, "Interrupts", 0); + if ( (d->iomem_caps == NULL) || (d->irq_caps == NULL) ) + goto fail; + if ( domcr_flags & DOMCRF_dummy ) return d; - - rangeset_domain_initialise(d); - init_status |= INIT_rangeset; if ( !is_idle_domain(d) ) { @@ -289,11 +294,6 @@ struct domain *domain_create( if ( arch_domain_create(d, domcr_flags) != 0 ) goto fail; init_status |= INIT_arch; - - d->iomem_caps = rangeset_new(d, "I/O Memory", RANGESETF_prettyprint_hex); - d->irq_caps = rangeset_new(d, "Interrupts", 0); - if ( (d->iomem_caps == NULL) || (d->irq_caps == NULL) ) - goto fail; if ( cpupool_add_domain(d, poolid) != 0 ) goto fail; _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |