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