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

[PATCH v3 2/3] xen/mm: add generic domain_clamp_alloc_bitsize() macro


  • To: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Grygorii Strashko <grygorii_strashko@xxxxxxxx>
  • Date: Fri, 28 Nov 2025 15:22:21 +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=hPhlpPQO+kk9DvnzI2NKX1j+ZgUlHCbYfuwZsB6QEdU=; b=DIEC5KgzMDkOCSFeNndPFoLKqN3CF/yrhpKF+pYpVHAsB+dsO7vdkGArXnbf02Jh22WS9Fq2EvpymNhXOUOdyyHEkEUzuKDP3TMBLahi/Pn2gUlAI2VyTMaKKfDeEcyXlpyhPASkMSHY2sm0lGBf4g0tGWVsUIAefAskWm9r+A9L0vcWWWq7eEVxldjtNk0WK33kSB0tpjr3DoFAiEyTFG5o1AL974TqX/4iyVqbbA2+QbaTBxSVQwSvZNsb8bA9mCsuPho+HgdCY7Ym4AcrIOOOfOa3yhVbCqaNXkPDtANVdoqghbSDEmfE0RUMBDkknvJHSsUIUqt5+nMtDAHJfw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=JdWAR796qRNOlTs3VUZFHWd1n+M7HDMfdLXx+lKJcdmUIZlSmaVEM3DGPqr+o/JGk/rmkIoBDL7fuGObN47Pgz2CWV9IGUBlZlew9ms+QQr6oG0XbwhHjV47cE3lHmmdpMUHUTeiuJmPQr2Fp9ioPTtjEtVpWw401nZyAcO6Hpzda2UP6eUQ5GJa3555zXKiA09iMca0Awn5mhvu8bqfBJuJu63nMRsablMGo4PyOz76PQ3stHAgXca2uQNudqiyXy4MSHy3dMmuDUSQfy0atqH4boqxQR03Jv/sH9NYBFZ2uYAeMHMSvvynQ8V1pRcMphJSUJTIZu4ylEhW56Zqhw==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=epam.com;
  • Cc: Grygorii Strashko <grygorii_strashko@xxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Bertrand Marquis <bertrand.marquis@xxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Timothy Pearson <tpearson@xxxxxxxxxxxxxxxxxxxxx>, Alistair Francis <alistair.francis@xxxxxxx>, Bob Eshleman <bobbyeshleman@xxxxxxxxx>, Connor Davis <connojdavis@xxxxxxxxx>, Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx>
  • Delivery-date: Fri, 28 Nov 2025 15:22:33 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHcYHrKI/DuZxtTF0mX/NaGMgBzNg==
  • Thread-topic: [PATCH v3 2/3] xen/mm: add generic domain_clamp_alloc_bitsize() macro

From: Grygorii Strashko <grygorii_strashko@xxxxxxxx>

Add generic domain_clamp_alloc_bitsize() macro and clean up arch specific
defines.

Signed-off-by: Grygorii Strashko <grygorii_strashko@xxxxxxxx>
Acked-by: Jan Beulich <jbeulich@xxxxxxxx>
---
v3: no changes, added tag

 xen/arch/arm/include/asm/mm.h   | 2 --
 xen/arch/ppc/include/asm/mm.h   | 2 --
 xen/arch/riscv/include/asm/mm.h | 2 --
 xen/arch/x86/include/asm/mm.h   | 1 +
 xen/include/xen/mm.h            | 4 ++++
 5 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/xen/arch/arm/include/asm/mm.h b/xen/arch/arm/include/asm/mm.h
index 4c6cc64aa7ba..ec2d2dc5372a 100644
--- a/xen/arch/arm/include/asm/mm.h
+++ b/xen/arch/arm/include/asm/mm.h
@@ -313,8 +313,6 @@ struct page_info *get_page_from_gva(struct vcpu *v, vaddr_t 
va,
 /* Arch-specific portion of memory_op hypercall. */
 long arch_memory_op(int op, XEN_GUEST_HANDLE_PARAM(void) arg);
 
-#define domain_clamp_alloc_bitsize(d, b) (b)
-
 unsigned long domain_get_maximum_gpfn(struct domain *d);
 
 /* Release all __init and __initdata ranges to be reused */
diff --git a/xen/arch/ppc/include/asm/mm.h b/xen/arch/ppc/include/asm/mm.h
index e478291fdf55..91c405876bd0 100644
--- a/xen/arch/ppc/include/asm/mm.h
+++ b/xen/arch/ppc/include/asm/mm.h
@@ -96,8 +96,6 @@ static inline struct page_info *virt_to_page(const void *v)
 /* TODO: implement */
 #define mfn_valid(mfn) ({ (void) (mfn); 0; })
 
-#define domain_clamp_alloc_bitsize(d, b) (b)
-
 #define PFN_ORDER(pfn_) ((pfn_)->v.free.order)
 
 struct page_info
diff --git a/xen/arch/riscv/include/asm/mm.h b/xen/arch/riscv/include/asm/mm.h
index 11e9f26bf0a5..e5ea91fa4d0c 100644
--- a/xen/arch/riscv/include/asm/mm.h
+++ b/xen/arch/riscv/include/asm/mm.h
@@ -292,8 +292,6 @@ static inline bool arch_mfns_in_directmap(unsigned long 
mfn, unsigned long nr)
 /* TODO: implement */
 #define mfn_valid(mfn) ({ (void)(mfn); 0; })
 
-#define domain_clamp_alloc_bitsize(d, b) ((void)(d), (b))
-
 #define PFN_ORDER(pg) ((pg)->v.free.order)
 
 extern unsigned char cpu0_boot_stack[];
diff --git a/xen/arch/x86/include/asm/mm.h b/xen/arch/x86/include/asm/mm.h
index 08153e6d6fa2..17ca6666a34e 100644
--- a/xen/arch/x86/include/asm/mm.h
+++ b/xen/arch/x86/include/asm/mm.h
@@ -621,6 +621,7 @@ extern int memory_add(unsigned long spfn, unsigned long 
epfn, unsigned int pxm);
 
 void domain_set_alloc_bitsize(struct domain *d);
 unsigned int domain_clamp_alloc_bitsize(struct domain *d, unsigned int bits);
+#define domain_clamp_alloc_bitsize(d, bits) domain_clamp_alloc_bitsize(d, bits)
 
 unsigned long domain_get_maximum_gpfn(struct domain *d);
 
diff --git a/xen/include/xen/mm.h b/xen/include/xen/mm.h
index b968f47b87e0..426362adb2f4 100644
--- a/xen/include/xen/mm.h
+++ b/xen/include/xen/mm.h
@@ -641,4 +641,8 @@ static inline void put_page_alloc_ref(struct page_info 
*page)
     }
 }
 
+#ifndef domain_clamp_alloc_bitsize
+#define domain_clamp_alloc_bitsize(d, bits) ((void)(d), (bits))
+#endif
+
 #endif /* __XEN_MM_H__ */
-- 
2.34.1



 


Rackspace

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