src/xenxs: Refactor code parsing memory config

introduce function
  xenParseXMMem(virConfPtr conf,.........);
which parses memory config instead

Signed-off-by: Kiarie Kahurani <davidkiarie4@gmail.com>
This commit is contained in:
Kiarie Kahurani 2014-08-07 21:32:50 +03:00 committed by Jim Fehlig
parent e260a0e60a
commit 52c048b1f0

View File

@ -244,6 +244,25 @@ xenXMConfigGetUUID(virConfPtr conf, const char *name, unsigned char *uuid)
return 0;
}
static int
xenParseXMMem(virConfPtr conf, virDomainDefPtr def)
{
if (xenXMConfigGetULongLong(conf, "memory", &def->mem.cur_balloon,
MIN_XEN_GUEST_SIZE * 2) < 0)
return -1;
if (xenXMConfigGetULongLong(conf, "maxmem", &def->mem.max_balloon,
def->mem.cur_balloon) < 0)
return -1;
def->mem.cur_balloon *= 1024;
def->mem.max_balloon *= 1024;
return 0;
}
#define MAX_VFB 1024
/*
* Turn a config record into a lump of XML describing the
@ -251,7 +270,7 @@ xenXMConfigGetUUID(virConfPtr conf, const char *name, unsigned char *uuid)
*/
virDomainDefPtr
xenParseXM(virConfPtr conf, int xendConfigVersion,
virCapsPtr caps)
virCapsPtr caps)
{
const char *str;
int hvm = 0;
@ -360,17 +379,9 @@ xenParseXM(virConfPtr conf, int xendConfigVersion,
}
}
if (xenXMConfigGetULongLong(conf, "memory", &def->mem.cur_balloon,
MIN_XEN_GUEST_SIZE * 2) < 0)
if (xenParseXMMem(conf, def) < 0)
goto cleanup;
if (xenXMConfigGetULongLong(conf, "maxmem", &def->mem.max_balloon,
def->mem.cur_balloon) < 0)
goto cleanup;
def->mem.cur_balloon *= 1024;
def->mem.max_balloon *= 1024;
if (xenXMConfigGetULong(conf, "vcpus", &count, 1) < 0 ||
MAX_VIRT_CPUS < count)
goto cleanup;