From de03b1dddee50f3f9718f03102697e7066af7f64 Mon Sep 17 00:00:00 2001 From: Peter Krempa Date: Thu, 30 Apr 2015 17:43:53 +0200 Subject: [PATCH] conf: Fix up balloon size after removing a memory device from def To avoid having the ballooned memory size larger than the actual physical memory size, truncate the ballooned size if it overflows. --- src/conf/domain_conf.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 334283d70..e3e0f637d 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -12988,6 +12988,11 @@ virDomainMemoryRemove(virDomainDefPtr def, { virDomainMemoryDefPtr ret = def->mems[idx]; VIR_DELETE_ELEMENT(def->mems, idx, def->nmems); + + /* fix up balloon size */ + if (def->mem.cur_balloon > virDomainDefGetMemoryActual(def)) + def->mem.cur_balloon = virDomainDefGetMemoryActual(def); + return ret; } -- 2.39.5