Hello, First patch on the series is a trivial change to xenconsoled in order to use xenforeignmemory stable library in order to map the shared console ring instead of the unstable libxc interface. It's reviewed and ready to go in.
Patches 2 and 3 allow setting the host wide command line `gnttab` option on a per domain basis. That means selecting the max allowed grant table version and whether transitive grants are allowed. The last 3 patches attempt to implement support for creating guests without a grant table. This requires some changes to xenstored in order to partially support guests without a valid ring interface, as the lack of grant table will prevent C xenstored from mapping the shared ring. Note this is not an issue for Ocaml xenstored, as it still uses the foreign memory interface to map the shared ring, and thus won't notice the lack of grant table support on the domain. Thanks, Roger. Roger Pau Monne (6): tools/console: use xenforeigmemory to map console ring gnttab: allow setting max version per-domain gnttab: allow per-domain control over transitive grants tools/xenstored: use atexit to close interfaces tools/xenstored: partially handle domains without a shared ring gnttab: allow disabling grant table per-domain docs/man/xl.cfg.5.pod.in | 12 +++ docs/man/xl.conf.5.pod.in | 14 +++ tools/console/Makefile | 4 +- tools/console/daemon/io.c | 25 ++++-- tools/helpers/init-xenstore-domain.c | 1 + tools/include/libxl.h | 14 +++ tools/libs/light/libxl_create.c | 6 ++ tools/libs/light/libxl_dm.c | 2 + tools/libs/light/libxl_dom.c | 2 +- tools/libs/light/libxl_types.idl | 2 + tools/ocaml/libs/xc/xenctrl.ml | 2 + tools/ocaml/libs/xc/xenctrl.mli | 2 + tools/ocaml/libs/xc/xenctrl_stubs.c | 12 ++- tools/xenstore/xenstored_core.h | 2 +- tools/xenstore/xenstored_domain.c | 91 ++++++++++---------- tools/xenstore/xenstored_minios.c | 4 +- tools/xl/xl.c | 15 ++++ tools/xl/xl.h | 2 + tools/xl/xl_parse.c | 13 +++ xen/arch/arm/domain_build.c | 4 + xen/arch/x86/setup.c | 2 + xen/common/domain.c | 3 +- xen/common/grant_table.c | 122 ++++++++++++++++++++++++++- xen/include/public/domctl.h | 15 +++- xen/include/xen/grant_table.h | 5 +- 25 files changed, 310 insertions(+), 66 deletions(-) -- 2.33.0
