domctl.u.createdomain.flags = flags;
memcpy(domctl.u.createdomain.handle, handle, sizeof(xen_domain_handle_t));
/* xc_domain_configure_t is an alias of arch_domainconfig_t */
- memcpy(&domctl.u.createdomain.config, config, sizeof(*config));
+ memcpy(&domctl.u.createdomain.arch, config, sizeof(*config));
if ( (err = do_domctl(xch, &domctl)) != 0 )
return err;
*pdomid = (uint16_t)domctl.domain;
- memcpy(config, &domctl.u.createdomain.config, sizeof(*config));
+ memcpy(config, &domctl.u.createdomain.arch, sizeof(*config));
return 0;
}
clear_page(d->shared_info);
share_xen_page_with_guest(virt_to_page(d->shared_info), d, SHARE_rw);
- switch ( config->config.gic_version )
+ switch ( config->arch.gic_version )
{
case XEN_DOMCTL_CONFIG_GIC_NATIVE:
switch ( gic_hw_version () )
{
case GIC_V2:
- config->config.gic_version = XEN_DOMCTL_CONFIG_GIC_V2;
+ config->arch.gic_version = XEN_DOMCTL_CONFIG_GIC_V2;
d->arch.vgic.version = GIC_V2;
break;
case GIC_V3:
- config->config.gic_version = XEN_DOMCTL_CONFIG_GIC_V3;
+ config->arch.gic_version = XEN_DOMCTL_CONFIG_GIC_V3;
d->arch.vgic.version = GIC_V3;
break;
if ( (rc = domain_io_init(d, count + MAX_IO_HANDLER)) != 0 )
goto fail;
- if ( (rc = domain_vgic_init(d, config->config.nr_spis)) != 0 )
+ if ( (rc = domain_vgic_init(d, config->arch.nr_spis)) != 0 )
goto fail;
- if ( (rc = domain_vtimer_init(d, &config->config)) != 0 )
+ if ( (rc = domain_vtimer_init(d, &config->arch)) != 0 )
goto fail;
update_domain_wallclock_time(d);
/* Create initial domain 0. */
/* The vGIC for DOM0 is exactly emulating the hardware GIC */
- dom0_cfg.config.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE;
- dom0_cfg.config.nr_spis = gic_number_lines() - 32;
+ dom0_cfg.arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE;
+ dom0_cfg.arch.nr_spis = gic_number_lines() - 32;
dom0 = domain_create(0, &dom0_cfg);
if ( IS_ERR(dom0) || (alloc_dom0_vcpu0(dom0) == NULL) )
d->arch.s3_integrity = config->flags & XEN_DOMCTL_CDF_s3_integrity;
- emflags = config->config.emulation_flags;
+ emflags = config->arch.emulation_flags;
if ( is_hardware_domain(d) && is_pv_domain(d) )
emflags |= XEN_X86_EMU_PIT;
((hvm_funcs.hap_supported && !opt_dom0_shadow) ?
XEN_DOMCTL_CDF_hap : 0));
- dom0_cfg.config.emulation_flags |=
+ dom0_cfg.arch.emulation_flags |=
XEN_X86_EMU_LAPIC | XEN_X86_EMU_IOAPIC | XEN_X86_EMU_VPCI;
}
#define _XEN_DOMCTL_CDF_xs_domain 4
#define XEN_DOMCTL_CDF_xs_domain (1U<<_XEN_DOMCTL_CDF_xs_domain)
uint32_t flags;
- struct xen_arch_domainconfig config;
+ struct xen_arch_domainconfig arch;
};
/* XEN_DOMCTL_getdomaininfo */