[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v2 00/12] Improvements to domain creation
The main purpose of this series is to move the allocation of d->vcpu[] into XEN_DOMCTL_createdomain, which resolves a longstanding issue since Xen 4.0 whereby the toolstack can cause NULL pointer deferences in Xen by issuing hypercalls in an unexpected order. Due to the way cleanup is currently performed, XEN_DOMCTL_max_vcpus is still required at this point. Further hypervisor cleanup and rearrangement is going to be required before the hypercall can be dropped. This series can be found in git form here: http://xenbits.xen.org/gitweb/?p=people/andrewcoop/xen.git;a=shortlog;h=refs/heads/xen-create-v1 v2 has had comprehensive testing in XenServer, but is only build tested for ARM. Andrew Cooper (12): tools/ocaml: Pass a full domctl_create_config into stub_xc_domain_create() tools: Rework xc_domain_create() to take a full xen_domctl_createdomain xen/domctl: Merge set_max_evtchn into createdomain xen/evtchn: Pass max_evtchn_port into evtchn_init() tools: Pass grant table limits to XEN_DOMCTL_set_gnttab_limits xen/gnttab: Pass max_{grant,maptrack}_frames into grant_table_create() xen/domctl: Remove XEN_DOMCTL_set_gnttab_limits xen/gnttab: Fold grant_table_{create,set_limits}() into grant_table_init() xen/domain: Call arch_domain_create() as early as possible in domain_create() tools: Pass max_vcpus to XEN_DOMCTL_createdomain xen/dom0: Arrange for dom0_cfg to contain the real max_vcpus value xen/domain: Allocate d->vcpu[] in domain_create() tools/flask/policy/modules/dom0.te | 4 +- tools/flask/policy/modules/xen.if | 4 +- tools/helpers/init-xenstore-domain.c | 39 ++++++------- tools/libxc/include/xenctrl.h | 31 +---------- tools/libxc/xc_domain.c | 55 ++----------------- tools/libxl/libxl_arch.h | 4 +- tools/libxl/libxl_arm.c | 16 +++--- tools/libxl/libxl_create.c | 28 ++++++---- tools/libxl/libxl_dom.c | 13 ----- tools/libxl/libxl_x86.c | 10 ++-- tools/ocaml/libs/xc/xenctrl.ml | 18 +++++- tools/ocaml/libs/xc/xenctrl.mli | 17 +++++- tools/ocaml/libs/xc/xenctrl_stubs.c | 63 +++++++++++++++------ tools/python/xen/lowlevel/xc/xc.c | 42 ++++++++++---- xen/arch/arm/domain_build.c | 13 +++-- xen/arch/arm/setup.c | 17 +++++- xen/arch/arm/vgic.c | 11 +--- xen/arch/arm/vgic/vgic.c | 22 +------- xen/arch/x86/dom0_build.c | 7 --- xen/arch/x86/setup.c | 5 ++ xen/common/domain.c | 57 ++++++++++++------- xen/common/domctl.c | 50 +---------------- xen/common/event_channel.c | 7 +-- xen/common/grant_table.c | 103 +++++++++-------------------------- xen/include/asm-arm/grant_table.h | 12 ---- xen/include/asm-x86/grant_table.h | 5 -- xen/include/asm-x86/setup.h | 2 - xen/include/public/domctl.h | 30 ++++------ xen/include/xen/domain.h | 3 + xen/include/xen/grant_table.h | 8 +-- xen/include/xen/sched.h | 2 +- xen/xsm/flask/hooks.c | 6 -- xen/xsm/flask/policy/access_vectors | 4 -- 33 files changed, 281 insertions(+), 427 deletions(-) -- 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |