[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[XEN][PATCH 7/7] xen/dt: kernel: add assert(!domain) in kernel_probe
- To: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
- From: Grygorii Strashko <grygorii_strashko@xxxxxxxx>
- Date: Thu, 31 Jul 2025 09:42:39 +0000
- Accept-language: en-US
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com; dkim=pass header.d=epam.com; arc=none
- 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=PZFWJ3JcUdcRmkliwj+c+bFkHVDd7TDs/cFw2uD44MM=; b=LiuYwz5HQVSXEV5X5emBq1hWAic8Wq6LT9OxtjIgRkUaI8dezrt4Mzjq5aSCl7mWhFTYC1SKOe2TyeEHBI9NgmTHfUwILr7+U/+/O0LsTfdJ8V+Fe47fMX0VIDNS9j40w9I+bnR126i9nITmSoL/f/VlIu1z7VE/CMpGfsZv38bGhqbGR0c+V/arrEiSM/HSqZYL1IeZV+I+sau7sgfdJfNZ2boYi6Bz0tC63VAsHXTkoKHkNQjZ5u5L7VFK5gQrbzgLpbpfYZ+WxLURGsFphcdUU+pTDzTklYA8Gp55cU7ElV1GqpcRXJuRZvGRTfvfmMd1WFUONbbqFPp4Q//Fqg==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=vqJY9LgkwMzueJDdYVD1u834zbd71b5t4EWS6bUXmEIk5Vc5Pg5+8fyA2yPrNSf45HLY8/UxsK9lMLQub5TNSh+odiKctMF2yOFIawZJalx5rKtZF5PYcD7M5n9veL4lP6Gu3G5QY0n7zfIznEgwSxTq//Em9D4bv1Sz4uqph4mfHzBE6tcL7rMWqRmx8bDb4QbxBm8SKalhIZceFTkFKtJXwdpLVmLuFli9DU3RxeRBvXe3uzzFg4emRFumONpIigVVfKvH9w7ILIu/2/s0n2MP12Np6pZTfOCwcDsW3o3Me0QypVrwcWWLiLlfEcHkEUpxaED/LzY9v+a6KJ1HFQ==
- Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=epam.com;
- Cc: Alejandro Vallejo <alejandro.garciavallejo@xxxxxxx>, Grygorii Strashko <grygorii_strashko@xxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Bertrand Marquis <bertrand.marquis@xxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>
- Delivery-date: Thu, 31 Jul 2025 09:42:49 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
- Thread-index: AQHcAf90SU7mttt73EGvxVqZtaGOmg==
- Thread-topic: [XEN][PATCH 7/7] xen/dt: kernel: add assert(!domain) in kernel_probe
From: Grygorii Strashko <grygorii_strashko@xxxxxxxx>
Existing users of kernel_probe() reworked to probe guest kernel before
creating domain and any new users must follow the same approach, so add
assert to check that domain was not created before calling kernel_probe().
Signed-off-by: Grygorii Strashko <grygorii_strashko@xxxxxxxx>
---
xen/common/device-tree/kernel.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/xen/common/device-tree/kernel.c b/xen/common/device-tree/kernel.c
index f67229f66d30..445a521607e0 100644
--- a/xen/common/device-tree/kernel.c
+++ b/xen/common/device-tree/kernel.c
@@ -128,6 +128,12 @@ int __init kernel_probe(struct kernel_info *info,
u64 kernel_addr, initrd_addr, dtb_addr, size;
int rc;
+ /*
+ * Kernel probe should be done and guest type (32/64bit) detected before
+ * creating domain and any new users must follow this approach.
+ */
+ ASSERT(!info->bd.d);
+
/*
* We need to initialize start to 0. This field may be populated during
* kernel_xxx_probe() if the image has a fixed entry point (for e.g.
--
2.34.1
|