[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 04/23] xen/arm: dom0less use domid 0 for hwdom


  • To: <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Jason Andryuk <jason.andryuk@xxxxxxx>
  • Date: Thu, 6 Mar 2025 17:03:24 -0500
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0)
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=obVZmGGT/+U9RfcJU0aGZukVfIOb/dDv2A9zwFbu3y8=; b=lx3o9g93VzlKwzQI3pmHR6yG02kBe+xqIr0xev76H2TshxW1Y/iFMGR9AyWieRqn81HRGadtZQhNKXKovBwE2ZHyBcLtMqZsWorVUdcZrmX2lncbGVtmpGXthEdem3JWAXa32NrbVY5X/zI8oixtFYnRT2omHbQ8XU7Oi7iU6Y9fE3HoB1asFSOYKj5ScI3BGaf603jgeGVlt4qPq8GrzEAVa1rVjdhs6rFMMsf/+YpVrlWvbkQ2YvaNIIBqTsCiuRjAhyGFaLBZA/QQaESdfnDFyTSUfyWD1fqisUnQKhpzsDj+PAFVMNf6Y0fZ6JjlcNTYD5BtwS2/pKknZy21RQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=KDdLn3x0xZvWp+BBu29v9ubuzXeNuoS7x6Ggq836IbwpRfbgj38URBKEWJb4qkcR+skGpeI/djs/6xhQnEuaP14msJ2vGJbOvE1QhphCt4UJRfFyWQ7dDZNhc1lQOzIoZJ8qCSWkF9iF/7cX8YGHuqSS3eH9UL9wKgMxAtDtQer7JMPc18mSSRHSK5D+UJwGy/KbIYb+snq546OtI1YvhTxBsJArG6Q54Tza+wxlr7CYBthZIc7fDRG9L9P57PPHMnC2atuTWF/dZAq1f6341Sw+lfJXs8u7+ESBbfSUw30EXhEROwVK0L0/is5EeGKgOWL7n0PhqVzc+UhiXw/9cQ==
  • Cc: Jason Andryuk <jason.andryuk@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Bertrand Marquis <bertrand.marquis@xxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, "Volodymyr Babchuk" <Volodymyr_Babchuk@xxxxxxxx>
  • Delivery-date: Thu, 06 Mar 2025 22:04:00 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

Assign domid 0 to the hwdom.  Normally, dom0less does not use domid 0.

This fixes using the Xen console which assumes domid 0 to use the
hypercall interface.

Signed-off-by: Jason Andryuk <jason.andryuk@xxxxxxx>
---
 xen/arch/arm/dom0less-build.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/xen/arch/arm/dom0less-build.c b/xen/arch/arm/dom0less-build.c
index e539bcc762..5a7871939b 100644
--- a/xen/arch/arm/dom0less-build.c
+++ b/xen/arch/arm/dom0less-build.c
@@ -969,6 +969,7 @@ void __init create_domUs(void)
     dt_for_each_child_node(chosen, node)
     {
         struct domain *d;
+        domid_t domid;
         struct xen_domctl_createdomain d_cfg = {
             .arch.gic_version = XEN_DOMCTL_CONFIG_GIC_NATIVE,
             .flags = XEN_DOMCTL_CDF_hvm | XEN_DOMCTL_CDF_hap,
@@ -1121,7 +1122,12 @@ void __init create_domUs(void)
          * very important to use the pre-increment operator to call
          * domain_create() with a domid > 0. (domid == 0 is reserved for Dom0)
          */
-        d = domain_create(++max_init_domid, &d_cfg, flags);
+        if ( flags & CDF_hardware )
+            domid = 0;
+        else
+            domid = ++max_init_domid;
+
+        d = domain_create(domid, &d_cfg, flags);
         if ( IS_ERR(d) )
             panic("Error creating domain %s (rc = %ld)\n",
                   dt_node_name(node), PTR_ERR(d));
-- 
2.48.1




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.