[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v3 00/15] xenstore: make it easier to run xenstore in a domain
Xen supports to run xenstore in a dedicated domain. It is, however, a setup which isn't easy to configure. Today flask is required for full functionality and the resulting xenstore domain is not configurable in the same way as the xenstore daemon. This patch series enables running a xenstore domain without flask. The tool needed to start that domain is added to the installed binaries and it is modified to pass arbitrary options to the xenstore domain. I didn't include a configuration option for starting xenstore as an own domain instead of the daemon, as this will require some major tweaking of especially the systemd configuration files. Support for this will be added later. The main issue is that running xenstore in a domain requires the xenstore sockets not to be created. I don't think this is possible with the current scheme of letting systemd create those sockets. Changes in V3: - patch 1: changed comment as requested by Ian Campbell - patch 2: changed name of flag from "xs_domain" to "xenstore" as requested by Ian Campbell - patch 3: flag in dominfo instead function to get xenstore domid as requested by Ian Campbell - patch 4: don't adapt coding style as requested by Ian Campbell adjust .gitignore - new patch 5: adapt coding style of init-xenstore-domain.c - patch 6 (was 5): adjust .gitignore as requested by Ian Campbell use libxentoollog instead of libxc as requested by Ian Campbell - patch 10 (was 9): omit dom0 when checking for xenstore domain as suggested by Ian Campbell log an error in case of an error when obtaining domain info as requested by Ian Campbell - patch 14 (was 13): xl shutdown modified to query the "never_stop" flag instead of the xenstore domain id as requested by Ian Campbell drop usage of xenstore-exists as requested by Ian Campbell - new patch 15: add xenstore domain xenstroe paths to docs as requested by Ian Campbell Changes in V2: - add new patch 3 to get the xenstore domain id via libxl - move init-xenstore-domain to new directory tools/helpers in patch 4 (former patch 3) and modify it to use the standard tools coding style - add new patch 5 moving xen-init-dom0 to tools/helpers - split patch 6 (former patch 4) into 2 patches as requested by Ian Campbell - correct parameter parsing in patch 8 (former patch 5) - modified commit message of patch 9 (former patch 6) as requested by Ian Campbell - add new patch 11 to split up xen-init-dom0 - modify patch 12 (former patch 8) to create json object and more xenstore entries, add error messages as requested by Ian Campbell - drop former patch 9 - add new patch 13 to avoid stopping xenstore domain on dom0 shutdown Juergen Gross (15): xen: add xenstore domain flag to hypervisor libxc: support new xenstore domain flag in libxc libxl: provide a flag in dominfo to avoid stopping it xenstore: move init-xenstore-domain to tools/helpers xenstore: adjust coding style of init-xenstore-domain.c libxl: move xen-init-dom0 to tools/helpers xenstore: destroy xenstore domain in case of error after creating it xenstore: add error messages to init-xenstore-domain xenstore: modify init-xenstore-domain parameter syntax xenstore: make use of the "xenstore domain" flag xenstore: add init-xenstore-domain parameter to specify cmdline tools: split up xen-init-dom0.c xenstore: write xenstore domain data to xenstore tools: don't stop xenstore domain when stopping dom0 docs: document xenstore domain xenstore paths .gitignore | 4 +- docs/misc/xenstore-paths.markdown | 10 + tools/Makefile | 1 + tools/helpers/Makefile | 46 +++++ tools/helpers/init-dom-json.c | 59 ++++++ tools/helpers/init-dom-json.h | 18 ++ tools/helpers/init-xenstore-domain.c | 343 ++++++++++++++++++++++++++++++++++ tools/helpers/xen-init-dom0.c | 67 +++++++ tools/hotplug/Linux/xendomains.in | 15 ++ tools/libxc/include/xenctrl.h | 2 +- tools/libxc/xc_domain.c | 1 + tools/libxl/Makefile | 14 +- tools/libxl/libxl.c | 11 +- tools/libxl/libxl.h | 9 + tools/libxl/libxl_types.idl | 1 + tools/libxl/xen-init-dom0.c | 120 ------------ tools/libxl/xl_cmdimpl.c | 8 +- tools/xenstore/Makefile | 9 - tools/xenstore/init-xenstore-domain.c | 119 ------------ xen/common/domain.c | 6 + xen/common/domctl.c | 14 +- xen/include/public/domctl.h | 6 + xen/include/xen/sched.h | 5 + xen/include/xsm/dummy.h | 6 + xen/include/xsm/xsm.h | 1 + 25 files changed, 620 insertions(+), 275 deletions(-) create mode 100644 tools/helpers/Makefile create mode 100644 tools/helpers/init-dom-json.c create mode 100644 tools/helpers/init-dom-json.h create mode 100644 tools/helpers/init-xenstore-domain.c create mode 100644 tools/helpers/xen-init-dom0.c delete mode 100644 tools/libxl/xen-init-dom0.c delete mode 100644 tools/xenstore/init-xenstore-domain.c -- 2.6.2 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |