[PATCH 07/23] tools/libxl: Expose hardware and privileged flags

Jason Andryuk posted 23 patches 3 days ago
[PATCH 07/23] tools/libxl: Expose hardware and privileged flags
Posted by Jason Andryuk 3 days ago
Expose the new hardware and privileged domain flags in libxl_domain as
boolean fields.

Signed-off-by: Jason Andryuk <jason.andryuk@amd.com>
---
 tools/include/libxl.h            | 16 ++++++++++++++++
 tools/libs/light/libxl_domain.c  |  2 ++
 tools/libs/light/libxl_types.idl |  2 ++
 3 files changed, 20 insertions(+)

diff --git a/tools/include/libxl.h b/tools/include/libxl.h
index f8fe4afd7d..bdf4c301c0 100644
--- a/tools/include/libxl.h
+++ b/tools/include/libxl.h
@@ -1010,6 +1010,22 @@ typedef struct libxl__ctx libxl_ctx;
  */
 #define LIBXL_HAVE_DOMINFO_GPADDR_BITS 1
 
+/*
+ * LIBXL_HAVE_DOMINFO_HARDWARE
+ *
+ * If this is defined, libxl_dominfo will contain a flag called hardware
+ * indicating that the specific domain is the hardware domain.
+ */
+#define LIBXL_HAVE_DOMINFO_HARDWARE 1
+
+/*
+ * LIBXL_HAVE_DOMINFO_PRIVILEGED
+ *
+ * If this is defined, libxl_dominfo will contain a flag called privileged
+ * indicating that the specific domain is privileged.
+ */
+#define LIBXL_HAVE_DOMINFO_PRIVILEGED 1
+
 /*
  * LIBXL_HAVE_QXL
  *
diff --git a/tools/libs/light/libxl_domain.c b/tools/libs/light/libxl_domain.c
index 6751fc785f..c6e3072027 100644
--- a/tools/libs/light/libxl_domain.c
+++ b/tools/libs/light/libxl_domain.c
@@ -291,6 +291,8 @@ void libxl__xcinfo2xlinfo(libxl_ctx *ctx,
     xlinfo->blocked    = !!(xcinfo->flags&XEN_DOMINF_blocked);
     xlinfo->running    = !!(xcinfo->flags&XEN_DOMINF_running);
     xlinfo->never_stop = !!(xcinfo->flags&XEN_DOMINF_xs_domain);
+    xlinfo->hardware   = !!(xcinfo->flags&XEN_DOMINF_hardware);
+    xlinfo->privileged = !!(xcinfo->flags&XEN_DOMINF_priv);
 
     if (xlinfo->shutdown)
         xlinfo->shutdown_reason = (xcinfo->flags>>XEN_DOMINF_shutdownshift) & XEN_DOMINF_shutdownmask;
diff --git a/tools/libs/light/libxl_types.idl b/tools/libs/light/libxl_types.idl
index bd4b8721ff..4fab558896 100644
--- a/tools/libs/light/libxl_types.idl
+++ b/tools/libs/light/libxl_types.idl
@@ -365,6 +365,8 @@ libxl_dominfo = Struct("dominfo",[
     ("shutdown",    bool),
     ("dying",       bool),
     ("never_stop",  bool),
+    ("hardware",    bool),
+    ("privileged",  bool),
 
     # Valid iff ->shutdown is true.
     #
-- 
2.48.1