linux/include/xen/balloon.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2/******************************************************************************
   3 * Xen balloon functionality
   4 */
   5
   6#define RETRY_UNLIMITED 0
   7
   8struct balloon_stats {
   9        /* We aim for 'current allocation' == 'target allocation'. */
  10        unsigned long current_pages;
  11        unsigned long target_pages;
  12        unsigned long target_unpopulated;
  13        /* Number of pages in high- and low-memory balloons. */
  14        unsigned long balloon_low;
  15        unsigned long balloon_high;
  16        unsigned long total_pages;
  17        unsigned long schedule_delay;
  18        unsigned long max_schedule_delay;
  19        unsigned long retry_count;
  20        unsigned long max_retry_count;
  21};
  22
  23extern struct balloon_stats balloon_stats;
  24
  25void balloon_set_new_target(unsigned long target);
  26
  27int alloc_xenballooned_pages(int nr_pages, struct page **pages);
  28void free_xenballooned_pages(int nr_pages, struct page **pages);
  29
  30#ifdef CONFIG_XEN_BALLOON
  31void xen_balloon_init(void);
  32#else
  33static inline void xen_balloon_init(void)
  34{
  35}
  36#endif
  37