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

[PATCH v4 02/13] kconfig: introduce domain builder config options


  • To: <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Alejandro Vallejo <agarciav@xxxxxxx>
  • Date: Thu, 17 Apr 2025 13:48:24 +0100
  • 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=iIYq/gaN+DmB5Pd6q8CgN7KNVQO3TY8xLL5l0FVWPA8=; b=cY9sgqJEIprYbYmH6tA/g/BZ1+0GGMRVT55A+h1RyJoi14kXtItTznTsGWX1HuHISdLKiUcRDRuqParjKDwmlYxInGhc/nEkU3pOTRbYw2jTIp7ljah1M4T7hIWzc5chouz5eRTvTVNB0y7dq22NJz+oeAxM2BG9WC01B29LpDxPhAPiwLUJ2Ez9FV+a1jvN4ISvQbfmqOYVhrjbWHBTJSZJVcIeBpTRj/I57EKG6FD9KykHcGV/M9NJgcIhSysFU5SuGD2o1KiWqrhQxU9op5tY44n8nEKBVEHziW9Yavw4apPOEnpPeDLpetdSBXCs7yns73TyBtgurSVWrMUEYA==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=LfBHU4xP3XXqWV57k5LaHxKKvFAY76m7MYpfFqvD81H/NE16m5JZxdlKTiEm0YvKq7jVcG7QhE8CpouEaniCWuVHOY3bTqeDEaBCxBLyX94URj8i533AMDIlID39/a8F3P6Dqr7EUOWGWREcR6JDYJYWVsVD+AsFzglLhKAjZsMXXKncJ/O03591Gt3Blk8kn0dWEYZLKEWLVqLVrfp9VR4ZxrVgby9RLGdzPzpDYJ7+Q1G/thEUEIMlcKqPabgL6+dD+lUxcdtwtBf4Z2PrUuAcxflFKsG24C0uCuzxcuW+DEUKmJ/Q4pLiXAnGMObDtoDSPRr4xHaM5JHTtyyIqw==
  • Cc: "Daniel P. Smith" <dpsmith@xxxxxxxxxxxxxxxxxxxx>, 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>, Alejandro Vallejo <agarciav@xxxxxxx>
  • Delivery-date: Thu, 17 Apr 2025 12:49:24 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

From: "Daniel P. Smith" <dpsmith@xxxxxxxxxxxxxxxxxxxx>

Hyperlaunch domain builder will be the consolidated boot time domain
building logic framework. Introduces the config option to enable this
domain builder to eventually turn on the ability to load the domain
configuration via a flattened device tree.

This is common code, but it's tightly integrated with boot_info, so the
whole builder is gated on CONFIG_HAS_BOOT_INFO, autoselected on x86 only
for the time being.

Signed-off-by: Daniel P. Smith <dpsmith@xxxxxxxxxxxxxxxxxxxx>
Signed-off-by: Alejandro Vallejo <agarciav@xxxxxxx>
---
v4:
  * Moved from arch/x86 to common/
  * Present the domain builder submenu for X86 only.
  * s/LIB_DEVICE_TREE/LIBFDT/
  * Reworded Kconfig to be a bit more user-friendly.
  * Dropped Jason's R-by, due to the new Kconfig option.
---
 xen/arch/x86/Kconfig              |  1 +
 xen/common/Kconfig                |  5 +++++
 xen/common/domain-builder/Kconfig | 18 ++++++++++++++++++
 3 files changed, 24 insertions(+)
 create mode 100644 xen/common/domain-builder/Kconfig

diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
index de2fa37f08..67de2decc5 100644
--- a/xen/arch/x86/Kconfig
+++ b/xen/arch/x86/Kconfig
@@ -15,6 +15,7 @@ config X86
        select FUNCTION_ALIGNMENT_16B
        select GENERIC_BUG_FRAME
        select HAS_ALTERNATIVE
+       select HAS_BOOT_INFO
        select HAS_COMPAT
        select HAS_CPUFREQ
        select HAS_DIT
diff --git a/xen/common/Kconfig b/xen/common/Kconfig
index be28060716..5c9d4eb3ab 100644
--- a/xen/common/Kconfig
+++ b/xen/common/Kconfig
@@ -67,6 +67,9 @@ config GENERIC_BUG_FRAME
 config HAS_ALTERNATIVE
        bool
 
+config HAS_BOOT_INFO
+       bool
+
 config HAS_COMPAT
        bool
 
@@ -144,6 +147,8 @@ config STATIC_MEMORY
 
          If unsure, say N.
 
+source "common/domain-builder/Kconfig"
+
 menu "Speculative hardening"
 
 config INDIRECT_THUNK
diff --git a/xen/common/domain-builder/Kconfig 
b/xen/common/domain-builder/Kconfig
new file mode 100644
index 0000000000..5b137e4c2b
--- /dev/null
+++ b/xen/common/domain-builder/Kconfig
@@ -0,0 +1,18 @@
+
+menu "Domain Builder Features"
+depends on HAS_BOOT_INFO
+
+config DOMAIN_BUILDER
+       bool "Domain builder (UNSUPPORTED)" if UNSUPPORTED
+       select LIBFDT
+       help
+         Xen has a built-in mechanisms to automatically construct domains
+         (like dom0) during the boot phase. The domain builder is an enhanced
+         form of that mechanism to enable constructing predefined domains
+         described on a flattened device tree.
+
+         This feature is currently experimental.
+
+         If unsure, say N.
+
+endmenu
-- 
2.43.0




 


Rackspace

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