balloon.h (f6a6cb1afe74d6ccc81aa70aa4ac3953762e7e6e) balloon.h (de5a77d8422fc7ed0b2f4349bceb65a1a639e5b2)
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 /* Number of pages in high- and low-memory balloons. */
12 unsigned long balloon_low;
13 unsigned long balloon_high;
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 /* Number of pages in high- and low-memory balloons. */
12 unsigned long balloon_low;
13 unsigned long balloon_high;
14 unsigned long total_pages;
14 unsigned long schedule_delay;
15 unsigned long max_schedule_delay;
16 unsigned long retry_count;
17 unsigned long max_retry_count;
15 unsigned long schedule_delay;
16 unsigned long max_schedule_delay;
17 unsigned long retry_count;
18 unsigned long max_retry_count;
18#ifdef CONFIG_XEN_BALLOON_MEMORY_HOTPLUG
19 unsigned long hotplug_pages;
20 unsigned long balloon_hotplug;
21#endif
22};
23
24extern struct balloon_stats balloon_stats;
25
26void balloon_set_new_target(unsigned long target);
27
28int alloc_xenballooned_pages(int nr_pages, struct page **pages,
29 bool highmem);
30void free_xenballooned_pages(int nr_pages, struct page **pages);
31
32struct device;
33#ifdef CONFIG_XEN_SELFBALLOONING
34extern int register_xen_selfballooning(struct device *dev);
35#else
36static inline int register_xen_selfballooning(struct device *dev)
37{
38 return -ENOSYS;
39}
40#endif
19};
20
21extern struct balloon_stats balloon_stats;
22
23void balloon_set_new_target(unsigned long target);
24
25int alloc_xenballooned_pages(int nr_pages, struct page **pages,
26 bool highmem);
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