|
[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 |