xen-balloon: Move core balloon functionality out of module
The basic functionality of ballooning pages is useful for Xen drivers in general. Rather than require a dependency on the balloon module, split the functionality that is reused into the core. The balloon module is still required to follow ballooning requests from xenstore or to view balloon statistics in sysfs. Acked-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
This commit is contained in:
committed by
Konrad Rzeszutek Wilk
parent
40095de1f9
commit
803eb047a2
22
include/xen/balloon.h
Normal file
22
include/xen/balloon.h
Normal file
@@ -0,0 +1,22 @@
|
||||
/******************************************************************************
|
||||
* Xen balloon functionality
|
||||
*/
|
||||
|
||||
#define RETRY_UNLIMITED 0
|
||||
|
||||
struct balloon_stats {
|
||||
/* We aim for 'current allocation' == 'target allocation'. */
|
||||
unsigned long current_pages;
|
||||
unsigned long target_pages;
|
||||
/* Number of pages in high- and low-memory balloons. */
|
||||
unsigned long balloon_low;
|
||||
unsigned long balloon_high;
|
||||
unsigned long schedule_delay;
|
||||
unsigned long max_schedule_delay;
|
||||
unsigned long retry_count;
|
||||
unsigned long max_retry_count;
|
||||
};
|
||||
|
||||
extern struct balloon_stats balloon_stats;
|
||||
|
||||
void balloon_set_new_target(unsigned long target);
|
Reference in New Issue
Block a user