xen/balloon: rename alloc/free_xenballooned_pages

alloc_xenballooned_pages() and free_xenballooned_pages() are used as
direct replacements of xen_alloc_unpopulated_pages() and
xen_free_unpopulated_pages() in case CONFIG_XEN_UNPOPULATED_ALLOC isn't
defined.

Guard both functions with !CONFIG_XEN_UNPOPULATED_ALLOC and rename them
to the xen_*() variants they are replacing. This allows to remove some
ifdeffery from the xen.h header file. Adapt the prototype of the
functions to match.

Signed-off-by: Juergen Gross <jgross@suse.com>
Link: https://lore.kernel.org/r/20211102092234.17852-1-jgross@suse.com
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
This commit is contained in:
Juergen Gross 2021-11-02 10:22:34 +01:00 committed by Boris Ostrovsky
parent 40fdea0284
commit 121f2faca2
3 changed files with 13 additions and 20 deletions

View File

@ -580,7 +580,8 @@ void balloon_set_new_target(unsigned long target)
} }
EXPORT_SYMBOL_GPL(balloon_set_new_target); EXPORT_SYMBOL_GPL(balloon_set_new_target);
static int add_ballooned_pages(int nr_pages) #ifndef CONFIG_XEN_UNPOPULATED_ALLOC
static int add_ballooned_pages(unsigned int nr_pages)
{ {
enum bp_state st; enum bp_state st;
@ -608,14 +609,14 @@ static int add_ballooned_pages(int nr_pages)
} }
/** /**
* alloc_xenballooned_pages - get pages that have been ballooned out * xen_alloc_unpopulated_pages - get pages that have been ballooned out
* @nr_pages: Number of pages to get * @nr_pages: Number of pages to get
* @pages: pages returned * @pages: pages returned
* @return 0 on success, error otherwise * @return 0 on success, error otherwise
*/ */
int alloc_xenballooned_pages(int nr_pages, struct page **pages) int xen_alloc_unpopulated_pages(unsigned int nr_pages, struct page **pages)
{ {
int pgno = 0; unsigned int pgno = 0;
struct page *page; struct page *page;
int ret; int ret;
@ -650,7 +651,7 @@ int alloc_xenballooned_pages(int nr_pages, struct page **pages)
return 0; return 0;
out_undo: out_undo:
mutex_unlock(&balloon_mutex); mutex_unlock(&balloon_mutex);
free_xenballooned_pages(pgno, pages); xen_free_unpopulated_pages(pgno, pages);
/* /*
* NB: free_xenballooned_pages will only subtract pgno pages, but since * NB: free_xenballooned_pages will only subtract pgno pages, but since
* target_unpopulated is incremented with nr_pages at the start we need * target_unpopulated is incremented with nr_pages at the start we need
@ -659,16 +660,16 @@ int alloc_xenballooned_pages(int nr_pages, struct page **pages)
balloon_stats.target_unpopulated -= nr_pages - pgno; balloon_stats.target_unpopulated -= nr_pages - pgno;
return ret; return ret;
} }
EXPORT_SYMBOL(alloc_xenballooned_pages); EXPORT_SYMBOL(xen_alloc_unpopulated_pages);
/** /**
* free_xenballooned_pages - return pages retrieved with get_ballooned_pages * xen_free_unpopulated_pages - return pages retrieved with get_ballooned_pages
* @nr_pages: Number of pages * @nr_pages: Number of pages
* @pages: pages to return * @pages: pages to return
*/ */
void free_xenballooned_pages(int nr_pages, struct page **pages) void xen_free_unpopulated_pages(unsigned int nr_pages, struct page **pages)
{ {
int i; unsigned int i;
mutex_lock(&balloon_mutex); mutex_lock(&balloon_mutex);
@ -685,9 +686,9 @@ void free_xenballooned_pages(int nr_pages, struct page **pages)
mutex_unlock(&balloon_mutex); mutex_unlock(&balloon_mutex);
} }
EXPORT_SYMBOL(free_xenballooned_pages); EXPORT_SYMBOL(xen_free_unpopulated_pages);
#if defined(CONFIG_XEN_PV) && !defined(CONFIG_XEN_UNPOPULATED_ALLOC) #if defined(CONFIG_XEN_PV)
static void __init balloon_add_region(unsigned long start_pfn, static void __init balloon_add_region(unsigned long start_pfn,
unsigned long pages) unsigned long pages)
{ {
@ -710,6 +711,7 @@ static void __init balloon_add_region(unsigned long start_pfn,
balloon_stats.total_pages += extra_pfn_end - start_pfn; balloon_stats.total_pages += extra_pfn_end - start_pfn;
} }
#endif #endif
#endif
static int __init balloon_init(void) static int __init balloon_init(void)
{ {

View File

@ -26,9 +26,6 @@ extern struct balloon_stats balloon_stats;
void balloon_set_new_target(unsigned long target); void balloon_set_new_target(unsigned long target);
int alloc_xenballooned_pages(int nr_pages, struct page **pages);
void free_xenballooned_pages(int nr_pages, struct page **pages);
#ifdef CONFIG_XEN_BALLOON #ifdef CONFIG_XEN_BALLOON
void xen_balloon_init(void); void xen_balloon_init(void);
#else #else

View File

@ -52,13 +52,7 @@ bool xen_biovec_phys_mergeable(const struct bio_vec *vec1,
extern u64 xen_saved_max_mem_size; extern u64 xen_saved_max_mem_size;
#endif #endif
#ifdef CONFIG_XEN_UNPOPULATED_ALLOC
int xen_alloc_unpopulated_pages(unsigned int nr_pages, struct page **pages); int xen_alloc_unpopulated_pages(unsigned int nr_pages, struct page **pages);
void xen_free_unpopulated_pages(unsigned int nr_pages, struct page **pages); void xen_free_unpopulated_pages(unsigned int nr_pages, struct page **pages);
#else
#define xen_alloc_unpopulated_pages alloc_xenballooned_pages
#define xen_free_unpopulated_pages free_xenballooned_pages
#include <xen/balloon.h>
#endif
#endif /* _XEN_XEN_H */ #endif /* _XEN_XEN_H */