From nobody Tue Sep 9 07:12:12 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1522853085023268.4122714263917; Wed, 4 Apr 2018 07:44:45 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 67DC1680EC; Wed, 4 Apr 2018 14:44:42 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 3838C7F35E; Wed, 4 Apr 2018 14:44:42 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 86FF265D13; Wed, 4 Apr 2018 14:44:41 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w34Eg7Pt020348 for ; Wed, 4 Apr 2018 10:42:07 -0400 Received: by smtp.corp.redhat.com (Postfix) id 67F36200BCB8; Wed, 4 Apr 2018 14:42:07 +0000 (UTC) Received: from virval.usersys.redhat.com (unknown [10.43.2.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 0F5DA2026985 for ; Wed, 4 Apr 2018 14:42:07 +0000 (UTC) Received: by virval.usersys.redhat.com (Postfix, from userid 500) id 0476510451C; Wed, 4 Apr 2018 16:42:02 +0200 (CEST) From: Jiri Denemark To: libvir-list@redhat.com Date: Wed, 4 Apr 2018 16:41:33 +0200 Message-Id: In-Reply-To: References: In-Reply-To: References: Mail-Followup-To: libvir-list@redhat.com X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 44/68] qemu: Hide qemuMigrationParamsSetCompression X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.38]); Wed, 04 Apr 2018 14:44:42 +0000 (UTC) X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" There's no need to call this API explicitly in the migration code. We can pass the compression parameters to qemuMigrationParamsFromFlags and it can internally call qemuMigrationParamsSetCompression to apply them to the qemuMigrationParams structure. Signed-off-by: Jiri Denemark --- src/qemu/qemu_driver.c | 30 ++++++++++++------------- src/qemu/qemu_migration.c | 38 ++++++++++---------------------- src/qemu/qemu_migration.h | 2 -- src/qemu/qemu_migration_params.c | 11 +++++---- src/qemu/qemu_migration_params.h | 8 ++----- 5 files changed, 36 insertions(+), 53 deletions(-) diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 85755257aa..3b0c3a3ffb 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -12142,7 +12142,7 @@ qemuDomainMigratePrepareTunnel(virConnectPtr dconn, goto cleanup; =20 if (!(migParams =3D qemuMigrationParamsFromFlags(NULL, 0, flags, - QEMU_MIGRATION_DESTINAT= ION))) + QEMU_MIGRATION_DESTINAT= ION, compression))) goto cleanup; =20 if (virLockManagerPluginUsesState(driver->lockManager)) { @@ -12160,7 +12160,7 @@ qemuDomainMigratePrepareTunnel(virConnectPtr dconn, =20 ret =3D qemuMigrationDstPrepareTunnel(driver, dconn, NULL, 0, NULL, NULL, /* No cookies= in v2 */ - st, &def, origname, compression, m= igParams, flags); + st, &def, origname, migParams, fla= gs); =20 cleanup: VIR_FREE(compression); @@ -12208,7 +12208,7 @@ qemuDomainMigratePrepare2(virConnectPtr dconn, goto cleanup; =20 if (!(migParams =3D qemuMigrationParamsFromFlags(NULL, 0, flags, - QEMU_MIGRATION_DESTINAT= ION))) + QEMU_MIGRATION_DESTINAT= ION, compression))) goto cleanup; =20 if (virLockManagerPluginUsesState(driver->lockManager)) { @@ -12232,7 +12232,7 @@ qemuDomainMigratePrepare2(virConnectPtr dconn, NULL, 0, NULL, NULL, /* No cookies= */ uri_in, uri_out, &def, origname, NULL, 0, NULL, 0, - compression, migParams, flags); + migParams, flags); =20 cleanup: qemuMigrationParamsFree(migParams); @@ -12273,7 +12273,7 @@ qemuDomainMigratePerform(virDomainPtr dom, goto cleanup; =20 if (!(migParams =3D qemuMigrationParamsFromFlags(NULL, 0, flags, - QEMU_MIGRATION_SOURCE))) + QEMU_MIGRATION_SOURCE, = compression))) goto cleanup; =20 if (!(vm =3D qemuDomObjFromDomain(dom))) @@ -12467,7 +12467,7 @@ qemuDomainMigratePrepare3(virConnectPtr dconn, goto cleanup; =20 if (!(migParams =3D qemuMigrationParamsFromFlags(NULL, 0, flags, - QEMU_MIGRATION_DESTINAT= ION))) + QEMU_MIGRATION_DESTINAT= ION, compression))) goto cleanup; =20 if (!(def =3D qemuMigrationAnyPrepareDef(driver, dom_xml, dname, &orig= name))) @@ -12481,7 +12481,7 @@ qemuDomainMigratePrepare3(virConnectPtr dconn, cookieout, cookieoutlen, uri_in, uri_out, &def, origname, NULL, 0, NULL, 0, - compression, migParams, flags); + migParams, flags); =20 cleanup: qemuMigrationParamsFree(migParams); @@ -12549,7 +12549,7 @@ qemuDomainMigratePrepare3Params(virConnectPtr dconn, goto cleanup; =20 if (!(migParams =3D qemuMigrationParamsFromFlags(params, nparams, flag= s, - QEMU_MIGRATION_DESTINAT= ION))) + QEMU_MIGRATION_DESTINAT= ION, compression))) goto cleanup; =20 if (flags & VIR_MIGRATE_TUNNELLED) { @@ -12574,7 +12574,7 @@ qemuDomainMigratePrepare3Params(virConnectPtr dconn, uri_in, uri_out, &def, origname, listenAddress, nmigrate_disks, migrate_disks, nbd= Port, - compression, migParams, flags); + migParams, flags); =20 cleanup: qemuMigrationParamsFree(migParams); @@ -12618,7 +12618,7 @@ qemuDomainMigratePrepareTunnel3(virConnectPtr dconn, goto cleanup; =20 if (!(migParams =3D qemuMigrationParamsFromFlags(NULL, 0, flags, - QEMU_MIGRATION_DESTINAT= ION))) + QEMU_MIGRATION_DESTINAT= ION, compression))) goto cleanup; =20 if (!(def =3D qemuMigrationAnyPrepareDef(driver, dom_xml, dname, &orig= name))) @@ -12630,7 +12630,7 @@ qemuDomainMigratePrepareTunnel3(virConnectPtr dconn, ret =3D qemuMigrationDstPrepareTunnel(driver, dconn, cookiein, cookieinlen, cookieout, cookieoutlen, - st, &def, origname, compression, m= igParams, flags); + st, &def, origname, migParams, fla= gs); =20 cleanup: VIR_FREE(compression); @@ -12682,7 +12682,7 @@ qemuDomainMigratePrepareTunnel3Params(virConnectPtr= dconn, goto cleanup; =20 if (!(migParams =3D qemuMigrationParamsFromFlags(params, nparams, flag= s, - QEMU_MIGRATION_DESTINAT= ION))) + QEMU_MIGRATION_DESTINAT= ION, compression))) goto cleanup; =20 if (!(def =3D qemuMigrationAnyPrepareDef(driver, dom_xml, dname, &orig= name))) @@ -12694,7 +12694,7 @@ qemuDomainMigratePrepareTunnel3Params(virConnectPtr= dconn, ret =3D qemuMigrationDstPrepareTunnel(driver, dconn, cookiein, cookieinlen, cookieout, cookieoutlen, - st, &def, origname, compression, m= igParams, flags); + st, &def, origname, migParams, fla= gs); =20 cleanup: VIR_FREE(compression); @@ -12730,7 +12730,7 @@ qemuDomainMigratePerform3(virDomainPtr dom, goto cleanup; =20 if (!(migParams =3D qemuMigrationParamsFromFlags(NULL, 0, flags, - QEMU_MIGRATION_SOURCE))) + QEMU_MIGRATION_SOURCE, = compression))) goto cleanup; =20 if (!(vm =3D qemuDomObjFromDomain(dom))) @@ -12822,7 +12822,7 @@ qemuDomainMigratePerform3Params(virDomainPtr dom, goto cleanup; =20 if (!(migParams =3D qemuMigrationParamsFromFlags(params, nparams, flag= s, - QEMU_MIGRATION_SOURCE))) + QEMU_MIGRATION_SOURCE, = compression))) goto cleanup; =20 if (!(vm =3D qemuDomObjFromDomain(dom))) diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c index e338bd05f6..304eaf52c5 100644 --- a/src/qemu/qemu_migration.c +++ b/src/qemu/qemu_migration.c @@ -2161,7 +2161,6 @@ qemuMigrationDstPrepareAny(virQEMUDriverPtr driver, size_t nmigrate_disks, const char **migrate_disks, int nbdPort, - qemuMigrationCompressionPtr compression, qemuMigrationParamsPtr migParams, unsigned long flags) { @@ -2375,9 +2374,6 @@ qemuMigrationDstPrepareAny(virQEMUDriverPtr driver, dataFD[1] =3D -1; /* 'st' owns the FD now & will close it */ } =20 - if (qemuMigrationParamsSetCompression(vm, compression, migParams) < 0) - goto stopjob; - if (STREQ_NULLABLE(protocol, "rdma") && virProcessSetMaxMemLock(vm->pid, vm->def->mem.hard_limit << 10) < = 0) { goto stopjob; @@ -2529,7 +2525,6 @@ qemuMigrationDstPrepareTunnel(virQEMUDriverPtr driver, virStreamPtr st, virDomainDefPtr *def, const char *origname, - qemuMigrationCompressionPtr compression, qemuMigrationParamsPtr migParams, unsigned long flags) { @@ -2548,7 +2543,7 @@ qemuMigrationDstPrepareTunnel(virQEMUDriverPtr driver, return qemuMigrationDstPrepareAny(driver, dconn, cookiein, cookieinlen, cookieout, cookieoutlen, def, origna= me, st, NULL, 0, false, NULL, 0, NULL, 0, - compression, migParams, flags); + migParams, flags); } =20 =20 @@ -2590,7 +2585,6 @@ qemuMigrationDstPrepareDirect(virQEMUDriverPtr driver, size_t nmigrate_disks, const char **migrate_disks, int nbdPort, - qemuMigrationCompressionPtr compression, qemuMigrationParamsPtr migParams, unsigned long flags) { @@ -2715,7 +2709,7 @@ qemuMigrationDstPrepareDirect(virQEMUDriverPtr driver, NULL, uri ? uri->scheme : "tcp", port, autoPort, listenAddress, nmigrate_disks, migrate_disks, nbdPor= t, - compression, migParams, flags); + migParams, flags); cleanup: virURIFree(uri); VIR_FREE(hostname); @@ -3242,7 +3236,6 @@ qemuMigrationSrcRun(virQEMUDriverPtr driver, const char *graphicsuri, size_t nmigrate_disks, const char **migrate_disks, - qemuMigrationCompressionPtr compression, qemuMigrationParamsPtr migParams) { int ret =3D -1; @@ -3317,9 +3310,6 @@ qemuMigrationSrcRun(virQEMUDriverPtr driver, if (qemuMigrationSrcGraphicsRelocate(driver, vm, mig, graphicsuri) < 0) VIR_WARN("unable to provide data for graphics client relocation"); =20 - if (qemuMigrationParamsSetCompression(vm, compression, migParams) < 0) - goto error; - if (qemuMigrationParamsCheck(driver, vm, QEMU_ASYNC_JOB_MIGRATION_OUT, migParams) < 0) goto error; @@ -3609,7 +3599,6 @@ qemuMigrationSrcPerformNative(virQEMUDriverPtr driver, const char *graphicsuri, size_t nmigrate_disks, const char **migrate_disks, - qemuMigrationCompressionPtr compression, qemuMigrationParamsPtr migParams) { qemuDomainObjPrivatePtr priv =3D vm->privateData; @@ -3661,7 +3650,7 @@ qemuMigrationSrcPerformNative(virQEMUDriverPtr driver, ret =3D qemuMigrationSrcRun(driver, vm, persist_xml, cookiein, cookiei= nlen, cookieout, cookieoutlen, flags, resource, &spec, dconn, graphicsuri, nmigrate_disks, migrate_disks, - compression, migParams); + migParams); =20 if (spec.destType =3D=3D MIGRATION_DEST_FD) VIR_FORCE_CLOSE(spec.dest.fd.qemu); @@ -3688,7 +3677,6 @@ qemuMigrationSrcPerformTunnel(virQEMUDriverPtr driver, const char *graphicsuri, size_t nmigrate_disks, const char **migrate_disks, - qemuMigrationCompressionPtr compression, qemuMigrationParamsPtr migParams) { int ret =3D -1; @@ -3726,7 +3714,7 @@ qemuMigrationSrcPerformTunnel(virQEMUDriverPtr driver, ret =3D qemuMigrationSrcRun(driver, vm, persist_xml, cookiein, cookiei= nlen, cookieout, cookieoutlen, flags, resource, &s= pec, dconn, graphicsuri, nmigrate_disks, migrate_= disks, - compression, migParams); + migParams); =20 cleanup: VIR_FORCE_CLOSE(spec.dest.fd.qemu); @@ -3750,7 +3738,6 @@ qemuMigrationSrcPerformPeer2Peer2(virQEMUDriverPtr dr= iver, unsigned long flags, const char *dname, unsigned long resource, - qemuMigrationCompressionPtr compression, qemuMigrationParamsPtr migParams) { virDomainPtr ddomain =3D NULL; @@ -3835,13 +3822,13 @@ qemuMigrationSrcPerformPeer2Peer2(virQEMUDriverPtr = driver, ret =3D qemuMigrationSrcPerformTunnel(driver, vm, st, NULL, NULL, 0, NULL, NULL, flags, resource, dconn, - NULL, 0, NULL, compression, mi= gParams); + NULL, 0, NULL, migParams); else ret =3D qemuMigrationSrcPerformNative(driver, vm, NULL, uri_out, cookie, cookielen, NULL, NULL, /* No out cookie w= ith v2 migration */ flags, resource, dconn, NULL, = 0, NULL, - compression, migParams); + migParams); =20 /* Perform failed. Make sure Finish doesn't overwrite the error */ if (ret < 0) @@ -4080,14 +4067,14 @@ qemuMigrationSrcPerformPeer2Peer3(virQEMUDriverPtr = driver, cookiein, cookieinlen, &cookieout, &cookieoutlen, flags, bandwidth, dconn, graph= icsuri, - nmigrate_disks, migrate_disks,= compression, + nmigrate_disks, migrate_disks, migParams); } else { ret =3D qemuMigrationSrcPerformNative(driver, vm, persist_xml, uri, cookiein, cookieinlen, &cookieout, &cookieoutlen, flags, bandwidth, dconn, graph= icsuri, - nmigrate_disks, migrate_disks,= compression, + nmigrate_disks, migrate_disks, migParams); } =20 @@ -4396,7 +4383,7 @@ qemuMigrationSrcPerformPeer2Peer(virQEMUDriverPtr dri= ver, } else { ret =3D qemuMigrationSrcPerformPeer2Peer2(driver, sconn, dconn, vm, dconnuri, flags, dname, re= source, - compression, migParams); + migParams); } =20 cleanup: @@ -4478,7 +4465,7 @@ qemuMigrationSrcPerformJob(virQEMUDriverPtr driver, ret =3D qemuMigrationSrcPerformNative(driver, vm, persist_xml, uri= , cookiein, cookieinlen, cookieout, cookieoutlen, flags, resource, NULL, NULL, 0= , NULL, - compression, migParams); + migParams); } if (ret < 0) goto endjob; @@ -4547,7 +4534,6 @@ qemuMigrationSrcPerformPhase(virQEMUDriverPtr driver, const char *graphicsuri, size_t nmigrate_disks, const char **migrate_disks, - qemuMigrationCompressionPtr compression, qemuMigrationParamsPtr migParams, const char *cookiein, int cookieinlen, @@ -4575,7 +4561,7 @@ qemuMigrationSrcPerformPhase(virQEMUDriverPtr driver, ret =3D qemuMigrationSrcPerformNative(driver, vm, persist_xml, uri, co= okiein, cookieinlen, cookieout, cookieoutlen, flags, resource, NULL, graphicsuri, - nmigrate_disks, migrate_disks, com= pression, migParams); + nmigrate_disks, migrate_disks, mig= Params); =20 if (ret < 0) { if (qemuMigrationSrcRestoreDomainState(driver, vm)) { @@ -4670,7 +4656,7 @@ qemuMigrationSrcPerform(virQEMUDriverPtr driver, return qemuMigrationSrcPerformPhase(driver, conn, vm, persist_= xml, uri, graphicsuri, nmigrate_disks, migrate_di= sks, - compression, migParams, + migParams, cookiein, cookieinlen, cookieout, cookieoutlen, flags, resource); diff --git a/src/qemu/qemu_migration.h b/src/qemu/qemu_migration.h index 02b33d4a5d..b67184874b 100644 --- a/src/qemu/qemu_migration.h +++ b/src/qemu/qemu_migration.h @@ -130,7 +130,6 @@ qemuMigrationDstPrepareTunnel(virQEMUDriverPtr driver, virStreamPtr st, virDomainDefPtr *def, const char *origname, - qemuMigrationCompressionPtr compression, qemuMigrationParamsPtr migParams, unsigned long flags); =20 @@ -149,7 +148,6 @@ qemuMigrationDstPrepareDirect(virQEMUDriverPtr driver, size_t nmigrate_disks, const char **migrate_disks, int nbdPort, - qemuMigrationCompressionPtr compression, qemuMigrationParamsPtr migParams, unsigned long flags); =20 diff --git a/src/qemu/qemu_migration_params.c b/src/qemu/qemu_migration_par= ams.c index 1795bafe24..4f76cc6683 100644 --- a/src/qemu/qemu_migration_params.c +++ b/src/qemu/qemu_migration_params.c @@ -137,9 +137,8 @@ qemuMigrationParamsFree(qemuMigrationParamsPtr migParam= s) } while (0) =20 =20 -int -qemuMigrationParamsSetCompression(virDomainObjPtr vm ATTRIBUTE_UNUSED, - qemuMigrationCompressionPtr compression, +static int +qemuMigrationParamsSetCompression(qemuMigrationCompressionPtr compression, qemuMigrationParamsPtr migParams) { if (compression->methods & (1ULL << QEMU_MIGRATION_COMPRESS_XBZRLE)) @@ -170,7 +169,8 @@ qemuMigrationParamsPtr qemuMigrationParamsFromFlags(virTypedParameterPtr params, int nparams, unsigned long flags, - qemuMigrationParty party) + qemuMigrationParty party, + qemuMigrationCompressionPtr compression) { qemuMigrationParamsPtr migParams; size_t i; @@ -201,6 +201,9 @@ qemuMigrationParamsFromFlags(virTypedParameterPtr param= s, goto error; } =20 + if (qemuMigrationParamsSetCompression(compression, migParams) < 0) + goto error; + return migParams; =20 error: diff --git a/src/qemu/qemu_migration_params.h b/src/qemu/qemu_migration_par= ams.h index b00075794a..399b5cde77 100644 --- a/src/qemu/qemu_migration_params.h +++ b/src/qemu/qemu_migration_params.h @@ -60,7 +60,8 @@ qemuMigrationParamsPtr qemuMigrationParamsFromFlags(virTypedParameterPtr params, int nparams, unsigned long flags, - qemuMigrationParty party); + qemuMigrationParty party, + qemuMigrationCompressionPtr compression); =20 qemuMigrationCompressionPtr qemuMigrationAnyCompressionParse(virTypedParameterPtr params, @@ -96,11 +97,6 @@ int qemuMigrationParamsDisableTLS(virDomainObjPtr vm, qemuMigrationParamsPtr migParams); =20 -int -qemuMigrationParamsSetCompression(virDomainObjPtr vm, - qemuMigrationCompressionPtr compression, - qemuMigrationParamsPtr migParams); - int qemuMigrationParamsCheck(virQEMUDriverPtr driver, virDomainObjPtr vm, --=20 2.17.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list