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

[PATCH v3 14/14] kconfig: Allow x86 to pick CONFIG_DOM0LESS_BOOT


  • To: <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Alejandro Vallejo <agarciav@xxxxxxx>
  • Date: Fri, 13 Jun 2025 17:13:23 +0200
  • 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=3sXC7bKMTvaM/Im+RuFHkslTamk4z5CqhBmXTzNI29c=; b=EINLOJDib4CciGNtHiRc6OP4NqBxdCxXiJTY6A53P2V/oB7rZFrRE/BOu2ADU4y5PMKtQbZdUqz4qtyPxkAoSod2iH6m6vmHnLlSxKmD3djkwJ8+cG4pxzA9wtEVZ36FTFbpi0swh6Cg4VOm8zt+a8x15ohXaQZSZmbcGtcH0xj+L6jidAv3vlQEaBok73BUEM7zSOAojdpn1z6C/T8UKzhWzW2iO4Us6nKr1CHusH/oOo3cJBdfXnAbn2vuvRo5gY7HGh9TyAZa8KB+LaiFlI252tu+3l6UXPqr6+eINoMANv3cWK4JiK0XUWOx0IpBEppqI9dS8BNVRb+VEOdR+A==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=obMpc9QlRNAW/bwpgCLlAlgeoU4/9kfBuh3Fv+2Wq+w9DaBbQFu2jNGg11RqIsMakNoAHUCV8cdXtLvftTc2JmeU06AZVp+41jneT7R2WX2yE8qeX9OMzEYspWJUfSgd015d/H9XYAu/khh/txW+hi7NokgxtCzUHbE2kRJlmVN21L44+nS4QVcPrZ87qRc+XMmenGjbUuNvRj+nZVB2L9eh+v/m1rkWCAIuXKgh/6sIofyNzCsn2TCBfpn53BsjO8a4Fev4PYrZznTVwlqSx4uRsuoQhz0j8Jl+eyf6bkDQJjvyFd0EMj6bScGiBpWzNo1eB030k7jnRIC2+0i7RQ==
  • Cc: Alejandro Vallejo <agarciav@xxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, "Julien Grall" <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, "Bertrand Marquis" <bertrand.marquis@xxxxxxx>, "Daniel P. Smith" <dpsmith@xxxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Fri, 13 Jun 2025 15:20:49 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

Without picking CONFIG_HAS_DEVICE_TREE.

In order to do that. Allow CONFIG_DOM0LESS_BOOT to enable a subset
of the common/device-tree/ directory. x86 doesn't want dom0less-build.c,
as that's tightly integrated still to the ARM way of building domains.

Requires "unsupported" for the time being until all required patches
make it through.

Signed-off-by: Alejandro Vallejo <agarciav@xxxxxxx>
---
 xen/arch/x86/Kconfig            |  1 +
 xen/common/Kconfig              | 12 +++++++-----
 xen/common/device-tree/Makefile |  2 +-
 3 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index 752d5141bb..cb4f9a834b 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -18,6 +18,7 @@ config X86
        select HAS_COMPAT
        select HAS_CPUFREQ
        select HAS_DIT
+       select HAS_DOM0LESS
        select HAS_EHCI
        select HAS_EX_TABLE
        select HAS_FAST_MULTIPLY
diff --git a/xen/common/Kconfig b/xen/common/Kconfig
index 2baa4221fd..5118ea7453 100644
--- a/xen/common/Kconfig
+++ b/xen/common/Kconfig
@@ -13,15 +13,17 @@ config CORE_PARKING
        depends on NR_CPUS > 1
 
 config DOM0LESS_BOOT
-       bool "Dom0less boot support" if EXPERT
+       bool "Dom0less boot support" if EXPERT && (!X86 || UNSUPPORTED)
        select LIBFDT
-       depends on HAS_DOM0LESS && HAS_DEVICE_TREE && DOMAIN_BUILD_HELPERS
-       default y
+       depends on HAS_DOM0LESS && (X86 || (HAS_DEVICE_TREE && 
DOMAIN_BUILD_HELPERS))
+       default y if !X86
        help
          Dom0less boot support enables Xen to create and start domU guests 
during
          Xen boot without the need of a control domain (Dom0), which could be
          present anyway.
 
+         If unsure on x86, say N.
+
 config DOMAIN_BUILD_HELPERS
        bool
 
@@ -155,7 +157,7 @@ config NUMA
 
 config STATIC_MEMORY
        bool "Static Allocation Support (UNSUPPORTED)" if UNSUPPORTED
-       depends on DOM0LESS_BOOT
+       depends on HAS_DEVICE_TREE && DOM0LESS_BOOT
        help
          Static Allocation refers to system or sub-system(domains) for
          which memory areas are pre-defined by configuration using physical
@@ -174,7 +176,7 @@ config STATIC_SHM
 
 config STATIC_EVTCHN
        bool "Static event channel support on a dom0less system"
-       depends on DOM0LESS_BOOT
+       depends on HAS_DEVICE_TREE && DOM0LESS_BOOT
        default y
        help
          This option enables establishing static event channel communication
diff --git a/xen/common/device-tree/Makefile b/xen/common/device-tree/Makefile
index cc56f42df9..f5410e685b 100644
--- a/xen/common/device-tree/Makefile
+++ b/xen/common/device-tree/Makefile
@@ -3,7 +3,7 @@ obj-$(CONFIG_HAS_DEVICE_TREE) += bootinfo-fdt.init.o
 obj-$(CONFIG_HAS_DEVICE_TREE) += bootinfo.init.o
 obj-$(CONFIG_HAS_DEVICE_TREE) += device-tree.o
 obj-$(CONFIG_DOMAIN_BUILD_HELPERS) += domain-build.init.o
-obj-$(CONFIG_DOM0LESS_BOOT) += dom0less-build.init.o
+obj-$(filter-out $(CONFIG_X86),$(CONFIG_DOM0LESS_BOOT)) += 
dom0less-build.init.o
 obj-$(CONFIG_OVERLAY_DTB) += dt-overlay.o
 obj-$(CONFIG_HAS_DEVICE_TREE) += intc.o
 obj-$(CONFIG_DOMAIN_BUILD_HELPERS) += kernel.o
-- 
2.43.0




 


Rackspace

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