On 23.07.25 08:28, Jan Beulich wrote:
On 22.07.2025 02:19, Jason Andryuk wrote:
--- a/xen/common/domain.c
+++ b/xen/common/domain.c
@@ -195,6 +195,14 @@ static void set_domain_state_info(struct 
xen_domctl_get_domain_state *info,
          info->state |= XEN_DOMCTL_GETDOMSTATE_STATE_DYING;
      if ( d->is_dying == DOMDYING_dead )
          info->state |= XEN_DOMCTL_GETDOMSTATE_STATE_DEAD;
+
+    info->caps = 0;
+    if ( is_control_domain(d) )
+        info->caps |= XEN_DOMCTL_GETDOMSTATE_CAP_CONTROL;
+    if ( is_hardware_domain(d) )
+        info->caps |= XEN_DOMCTL_GETDOMSTATE_CAP_HARDWARE;
+    if ( is_xenstore_domain(d) )
+        info->caps |= XEN_DOMCTL_GETDOMSTATE_CAP_XENSTORE;
      info->unique_id = d->unique_id;
  }

This being a stable sub-op, don't we need a way to indicate to the caller
_that_ this field has valid data now? When non-zero it's easy to tell, but
getting back zero is ambiguous.

The hypercall sub-op was introduced in this development cycle only, so
there is no released Xen hypervisor without the capability setting.

In case this patch doesn't make it into 4.21, the case you are mentioning
must be handled, of course.


Juergen

Attachment: OpenPGP_0xB0DE9DD628BF132F.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to