|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] libxl: create xenstore nodes for control/feature-XXX flags
The xenstore-paths documentation specifies various control/feature-XXX
flags to allow a guest to tell a toolstack about its abilities to
respond to values written to control/shutdown. However, because the
parent control xenstore key is created read-only to the guest, unless
empty nodes for the feature flags are also created reat/write by the
toolstack, the guest will not be able to set any flags.
This patch adds code to create all specified feature flag nodes at
domain creation time.
Signed-off-by: Paul Durrant <paul.durrant@xxxxxxxxxx>
Cc: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
Cc: Wei Liu <wei.liu2@xxxxxxxxxx>
---
tools/libxl/libxl_create.c | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/tools/libxl/libxl_create.c b/tools/libxl/libxl_create.c
index 828f254..03b6339 100644
--- a/tools/libxl/libxl_create.c
+++ b/tools/libxl/libxl_create.c
@@ -646,6 +646,23 @@ retry_transaction:
GCSPRINTF("%s/control/shutdown", dom_path),
rwperm, ARRAY_SIZE(rwperm));
libxl__xs_mknod(gc, t,
+ GCSPRINTF("%s/control/feature-poweroff", dom_path),
+ rwperm, ARRAY_SIZE(rwperm));
+ libxl__xs_mknod(gc, t,
+ GCSPRINTF("%s/control/feature-reboot", dom_path),
+ rwperm, ARRAY_SIZE(rwperm));
+ libxl__xs_mknod(gc, t,
+ GCSPRINTF("%s/control/feature-suspend", dom_path),
+ rwperm, ARRAY_SIZE(rwperm));
+ if (info->type == LIBXL_DOMAIN_TYPE_HVM) {
+ libxl__xs_mknod(gc, t,
+ GCSPRINTF("%s/control/feature-s3", dom_path),
+ rwperm, ARRAY_SIZE(rwperm));
+ libxl__xs_mknod(gc, t,
+ GCSPRINTF("%s/control/feature-s4", dom_path),
+ rwperm, ARRAY_SIZE(rwperm));
+ }
+ libxl__xs_mknod(gc, t,
GCSPRINTF("%s/device/suspend/event-channel", dom_path),
rwperm, ARRAY_SIZE(rwperm));
libxl__xs_mknod(gc, t,
--
2.1.4
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |