summaryrefslogtreecommitdiffstats
path: root/include/xen/balloon.h
diff options
context:
space:
mode:
authorDaniel De Graaf <dgdegra@tycho.nsa.gov>2011-03-14 16:29:37 +0100
committerKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>2011-03-16 15:05:34 +0100
commit803eb047a28d239809fff1f87274cdaa94e0d8ea (patch)
tree67451cde4571c547314c6c28ae151741b3ff89af /include/xen/balloon.h
parentxen/balloon: Remove pr_info's and don't alter retry_count (diff)
downloadlinux-803eb047a28d239809fff1f87274cdaa94e0d8ea.tar.xz
linux-803eb047a28d239809fff1f87274cdaa94e0d8ea.zip
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>
Diffstat (limited to 'include/xen/balloon.h')
-rw-r--r--include/xen/balloon.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/include/xen/balloon.h b/include/xen/balloon.h
new file mode 100644
index 000000000000..f72e4794ec77
--- /dev/null
+++ b/include/xen/balloon.h
@@ -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);