1
0
Fork 0

xen/balloon: Support xend-based toolstack

Xend-based toolstacks don't have static-max entry in xenstore. The
equivalent node for those toolstacks is memory_static_max.

Fixes: 5266b8e444 (xen: fix booting ballooned down hvm guest)
Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: <stable@vger.kernel.org> # 4.13
Reviewed-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Juergen Gross <jgross@suse.com>
hifive-unleashed-5.1
Boris Ostrovsky 2018-10-07 16:05:38 -04:00 committed by Juergen Gross
parent 7deecbda30
commit 3aa6c19d2f
1 changed files with 8 additions and 5 deletions

View File

@ -76,12 +76,15 @@ static void watch_target(struct xenbus_watch *watch,
if (!watch_fired) {
watch_fired = true;
err = xenbus_scanf(XBT_NIL, "memory", "static-max", "%llu",
&static_max);
if (err != 1)
static_max = new_target;
else
if ((xenbus_scanf(XBT_NIL, "memory", "static-max",
"%llu", &static_max) == 1) ||
(xenbus_scanf(XBT_NIL, "memory", "memory_static_max",
"%llu", &static_max) == 1))
static_max >>= PAGE_SHIFT - 10;
else
static_max = new_target;
target_diff = (xen_pv_domain() || xen_initial_domain()) ? 0
: static_max - balloon_stats.target_pages;
}