]> xenbits.xensource.com Git - people/jgross/xen.git/commitdiff
xen/memory: Introduce CONFIG_ARCH_ACQUIRE_RESOURCE
authorAndrew Cooper <andrew.cooper3@citrix.com>
Mon, 27 Jul 2020 11:28:24 +0000 (12:28 +0100)
committerAndrew Cooper <andrew.cooper3@citrix.com>
Tue, 12 Jan 2021 18:17:02 +0000 (18:17 +0000)
New architectures shouldn't be forced to implement no-op stubs for unused
functionality.

Introduce CONFIG_ARCH_ACQUIRE_RESOURCE which can be opted in to, and provide
compatibility logic in xen/mm.h

No functional change.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Paul Durrant <paul@xen.org>
Acked-by: Julien Grall <jgrall@amazon.com>
xen/arch/x86/Kconfig
xen/common/Kconfig
xen/include/asm-arm/mm.h
xen/include/xen/mm.h

index 24868aa6ad64909b455dadcad58a25520ff37162..78f351f94b60f2d79af976716cdfae6487d92f5d 100644 (file)
@@ -6,6 +6,7 @@ config X86
        select ACPI
        select ACPI_LEGACY_TABLES_LOOKUP
        select ARCH_SUPPORTS_INT128
+       select ARCH_ACQUIRE_RESOURCE
        select COMPAT
        select CORE_PARKING
        select HAS_ALTERNATIVE
index 0661328a99e7b75b7e288ec64ef1da88a6993bf8..b5c91a16649ee915640120b8eb8f43a92223b06b 100644 (file)
@@ -22,6 +22,9 @@ config GRANT_TABLE
 
          If unsure, say Y.
 
+config ARCH_ACQUIRE_RESOURCE
+       bool
+
 config HAS_ALTERNATIVE
        bool
 
index f8ba49b1188f0486e8ddc6cd9b2fe2db55c2123f..0b7de3102ef944809c8fdce7375f48913faa8500 100644 (file)
@@ -358,14 +358,6 @@ static inline void put_page_and_type(struct page_info *page)
 
 void clear_and_clean_page(struct page_info *page);
 
-static inline
-int arch_acquire_resource(struct domain *d, unsigned int type, unsigned int id,
-                          unsigned long frame, unsigned int nr_frames,
-                          xen_pfn_t mfn_list[])
-{
-    return -EOPNOTSUPP;
-}
-
 unsigned int arch_get_dma_bitsize(void);
 
 #endif /*  __ARCH_ARM_MM__ */
index 85a8df9948c1903e082ad85ad210f0dddcf55672..e62a5b726eae05e001c4921f73e6def60c8e5e05 100644 (file)
@@ -702,4 +702,13 @@ static inline void put_page_alloc_ref(struct page_info *page)
     }
 }
 
+#ifndef CONFIG_ARCH_ACQUIRE_RESOURCE
+static inline int arch_acquire_resource(
+    struct domain *d, unsigned int type, unsigned int id, unsigned long frame,
+    unsigned int nr_frames, xen_pfn_t mfn_list[])
+{
+    return -EOPNOTSUPP;
+}
+#endif /* !CONFIG_ARCH_ACQUIRE_RESOURCE */
+
 #endif /* __XEN_MM_H__ */