[libvirt] [PATCH v2 6/7] tests: Introduce QEMU memory locking limit tests
Martin Kletzander
mkletzan at redhat.com
Mon Mar 27 20:15:11 UTC 2017
On Mon, Mar 27, 2017 at 05:38:58PM +0200, Andrea Bolognani wrote:
>These tests cover a number of scenarios where we care about
>the memory locking limit being set correctly for the guest
>to work properly.
>---
>
>+static int
>+testCompareMemLock(const void *data)
>+{
>+ const struct testInfo *info = data;
>+ virConnectPtr conn = NULL;
>+ virDomainObjPtr vm = NULL;
>+ char *xml = NULL;
>+ int ret = -1;
>+
>+ if (!(conn = virGetConnect()))
>+ goto cleanup;
>+
>+ if (virAsprintf(&xml, "%s/qemumemlockdata/qemumemlock-%s.xml",
>+ abs_srcdir, info->name) < 0)
>+ goto cleanup;
>+
>+ if (!(vm = virDomainObjNew(driver.xmlopt)))
>+ goto cleanup;
>+
>+ if (!(vm->def = virDomainDefParseFile(xml, driver.caps, driver.xmlopt, NULL,
>+ VIR_DOMAIN_DEF_PARSE_INACTIVE))) {
>+ goto cleanup;
>+ }
>+
>+ if (virTestCompareToULL(info->memlock, qemuDomainGetMemLockLimitBytes(vm->def)) < 0)
>+ goto cleanup;
>+
>+ ret = 0;
>+
>+ cleanup:
>+ virObjectUnref(vm);
>+ virObjectUnref(conn);
>+ VIR_FREE(xml);
>+
>+ return ret;
>+}
>+
Looking at this function I don't think we really understood each other.
Looks like I explain better with code than words, so let me fix that
right up. ACK with the following squashed in:
diff --git c/tests/qemumemlocktest.c w/tests/qemumemlocktest.c
index 91593884656f..50e23d584e30 100644
--- c/tests/qemumemlocktest.c
+++ w/tests/qemumemlocktest.c
@@ -34,34 +34,23 @@ static int
testCompareMemLock(const void *data)
{
const struct testInfo *info = data;
- virConnectPtr conn = NULL;
- virDomainObjPtr vm = NULL;
+ virDomainDefPtr def = NULL;
char *xml = NULL;
int ret = -1;
- if (!(conn = virGetConnect()))
- goto cleanup;
-
if (virAsprintf(&xml, "%s/qemumemlockdata/qemumemlock-%s.xml",
abs_srcdir, info->name) < 0)
goto cleanup;
- if (!(vm = virDomainObjNew(driver.xmlopt)))
- goto cleanup;
-
- if (!(vm->def = virDomainDefParseFile(xml, driver.caps, driver.xmlopt, NULL,
- VIR_DOMAIN_DEF_PARSE_INACTIVE))) {
+ if (!(def = virDomainDefParseFile(xml, driver.caps, driver.xmlopt, NULL,
+ VIR_DOMAIN_DEF_PARSE_INACTIVE))) {
goto cleanup;
}
- if (virTestCompareToULL(info->memlock, qemuDomainGetMemLockLimitBytes(vm->def)) < 0)
- goto cleanup;
-
- ret = 0;
-
+ ret = virTestCompareToULL(info->memlock,
+ qemuDomainGetMemLockLimitBytes(def));
cleanup:
- virObjectUnref(vm);
- virObjectUnref(conn);
+ virDomainDefFree(def);
VIR_FREE(xml);
return ret;
--
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: Digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20170327/e587c281/attachment-0001.sig>
More information about the libvir-list
mailing list