From nobody Sun Feb 8 21:41:39 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) client-ip=170.10.129.124; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-124.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1662386291; cv=none; d=zohomail.com; s=zohoarc; b=DFiptQg9c9mEF9Eb4Au5IcI7TrjR+j1n1UK/E/kuE8O7g4JDWT05+ijVUDdDJlX/yKHotYW7gm+fHEPEmlefq5OQRQt/1v87otwUHS/iVU1D20gyRWMJvpPEDiEJb7SI3+Fj6aWXdc6gVQxJq0Md5NwrJUxSln0yrJ2cXIrKCnA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1662386291; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=3tGyftZRBcyQrWZDWKjcmg2ndvCLyzqHskwFTJoJdFA=; b=OIWdaStX19pwQX0Kjzte0xIa3q4wi5+3CNh9nBJMRkEfCIYOBbCTk6NXIktj0fMB0LYZeO60FVomcH31+nk4O253CF128LV4gKHyNZ9Hpve+RxGrJXhWOvDTIigzr5r1tKtzvdDsP8HCPlkeazJYEAHFMHqfvqsIjFq1g/ktqSI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mx.zohomail.com with SMTPS id 1662386291564228.80406054925618; Mon, 5 Sep 2022 06:58:11 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-170-J6DJL-i5Pmq73yd7ld4tnA-1; Mon, 05 Sep 2022 09:57:35 -0400 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com [10.11.54.7]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 03FA3811E80; Mon, 5 Sep 2022 13:57:30 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (unknown [10.30.29.100]) by smtp.corp.redhat.com (Postfix) with ESMTP id E19A91415137; Mon, 5 Sep 2022 13:57:29 +0000 (UTC) Received: from mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (localhost [IPv6:::1]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id C07B71946A48; Mon, 5 Sep 2022 13:57:29 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id BBA3E193F6EA for ; Mon, 5 Sep 2022 13:57:28 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id A1CA12026D64; Mon, 5 Sep 2022 13:57:28 +0000 (UTC) Received: from fedora.redhat.com (unknown [10.43.2.166]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4D7EC2026D4C for ; Mon, 5 Sep 2022 13:57:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1662386289; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=3tGyftZRBcyQrWZDWKjcmg2ndvCLyzqHskwFTJoJdFA=; b=DCy6WhED/nnTOP/DCstte1jZRUmNQw+7VCfcl/0KdkmNmcYNze7yozcb0MXoSeRvtUTxyh 8KbWjhkkmx8eRALxkuPNAOrd4UBdjvGc7x6dPWNmjdJmn54ightV7PHyKADW4EV57+zwpc ji9ZInzyypbgxwg8sN/rlgiS//Dh5hk= X-MC-Unique: J6DJL-i5Pmq73yd7ld4tnA-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Kristina Hanicova To: libvir-list@redhat.com Subject: [PATCH v2 12/17] libxl: use virDomainObjEndJob() Date: Mon, 5 Sep 2022 15:57:10 +0200 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libvir-list-bounces@redhat.com Sender: "libvir-list" X-Scanned-By: MIMEDefang 2.85 on 10.11.54.7 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1662386292611100001 Content-Type: text/plain; charset="utf-8"; x-default="true" This patch removes libxlDomainObjEndJob() and replaces it with call to the generalized virDomainObjEndJob(). Signed-off-by: Kristina Hanicova --- src/libxl/libxl_domain.c | 27 ++------------------ src/libxl/libxl_domain.h | 4 --- src/libxl/libxl_driver.c | 51 +++++++++++++++++-------------------- src/libxl/libxl_migration.c | 14 +++++----- 4 files changed, 33 insertions(+), 63 deletions(-) diff --git a/src/libxl/libxl_domain.c b/src/libxl/libxl_domain.c index 3a1b371054..2d53250895 100644 --- a/src/libxl/libxl_domain.c +++ b/src/libxl/libxl_domain.c @@ -43,29 +43,6 @@ VIR_LOG_INIT("libxl.libxl_domain"); =20 =20 -/* - * obj must be locked before calling - * - * To be called after completing the work associated with the - * earlier libxlDomainBeginJob() call - * - * Returns true if the remaining reference count on obj is - * non-zero, false if the reference count has dropped to zero - * and obj is disposed. - */ -void -libxlDomainObjEndJob(libxlDriverPrivate *driver G_GNUC_UNUSED, - virDomainObj *obj) -{ - virDomainJob job =3D obj->job->active; - - VIR_DEBUG("Stopping job: %s", - virDomainJobTypeToString(job)); - - virDomainObjResetJob(obj->job); - virCondSignal(&obj->job->cond); -} - int libxlDomainJobGetTimeElapsed(virDomainJobObj *job, unsigned long long *tim= eElapsed) { @@ -505,7 +482,7 @@ libxlDomainShutdownThread(void *opaque) } =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -541,7 +518,7 @@ libxlDomainDeathThread(void *opaque) libxlDomainCleanup(driver, vm); if (!vm->persistent) virDomainObjListRemove(driver->domains, vm); - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); virObjectEventStateQueue(driver->domainEventState, dom_event); =20 cleanup: diff --git a/src/libxl/libxl_domain.h b/src/libxl/libxl_domain.h index b80552e30a..94b693e477 100644 --- a/src/libxl/libxl_domain.h +++ b/src/libxl/libxl_domain.h @@ -49,10 +49,6 @@ extern const struct libxl_event_hooks ev_hooks; int libxlDomainObjPrivateInitCtx(virDomainObj *vm); =20 -void -libxlDomainObjEndJob(libxlDriverPrivate *driver, - virDomainObj *obj); - int libxlDomainJobGetTimeElapsed(virDomainJobObj *job, unsigned long long *timeElapsed); diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c index d94430708a..79af2f4441 100644 --- a/src/libxl/libxl_driver.c +++ b/src/libxl/libxl_driver.c @@ -340,7 +340,7 @@ libxlAutostartDomain(virDomainObj *vm, ret =3D 0; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); cleanup: virDomainObjEndAPI(&vm); =20 @@ -1065,7 +1065,7 @@ libxlDomainCreateXML(virConnectPtr conn, const char *= xml, dom =3D virGetDomain(conn, vm->def->name, vm->def->uuid, vm->def->id); =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -1185,7 +1185,7 @@ libxlDomainSuspend(virDomainPtr dom) ret =3D 0; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -1239,7 +1239,7 @@ libxlDomainResume(virDomainPtr dom) ret =3D 0; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -1398,7 +1398,7 @@ libxlDomainDestroyFlags(virDomainPtr dom, ret =3D 0; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -1472,7 +1472,7 @@ libxlDomainPMSuspendForDuration(virDomainPtr dom, ret =3D 0; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -1537,7 +1537,7 @@ libxlDomainPMWakeup(virDomainPtr dom, unsigned int fl= ags) libxlDomainCleanup(driver, vm); =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -1696,7 +1696,7 @@ libxlDomainSetMemoryFlags(virDomainPtr dom, unsigned = long newmem, ret =3D 0; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -1917,7 +1917,7 @@ libxlDomainSaveFlags(virDomainPtr dom, const char *to= , const char *dxml, ret =3D 0; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -1979,7 +1979,7 @@ libxlDomainRestoreFlags(virConnectPtr conn, const cha= r *from, if (ret < 0 && !vm->persistent) virDomainObjListRemove(driver->domains, vm); =20 - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: if (VIR_CLOSE(fd) < 0) @@ -2076,7 +2076,7 @@ libxlDomainCoreDump(virDomainPtr dom, const char *to,= unsigned int flags) } =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -2129,7 +2129,7 @@ libxlDomainManagedSave(virDomainPtr dom, unsigned int= flags) ret =3D 0; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -2344,7 +2344,7 @@ libxlDomainSetVcpusFlags(virDomainPtr dom, unsigned i= nt nvcpus, } =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: VIR_FREE(bitmask); @@ -2489,7 +2489,7 @@ libxlDomainPinVcpuFlags(virDomainPtr dom, unsigned in= t vcpu, } =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -2793,7 +2793,7 @@ libxlDomainCreateWithFlags(virDomainPtr dom, dom->id =3D vm->def->id; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -4152,7 +4152,7 @@ libxlDomainAttachDeviceFlags(virDomainPtr dom, const = char *xml, } =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainDeviceDefFree(devConf); @@ -4240,7 +4240,7 @@ libxlDomainDetachDeviceFlags(virDomainPtr dom, const = char *xml, } =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainDeviceDefFree(dev); @@ -4522,7 +4522,7 @@ libxlDomainSetAutostart(virDomainPtr dom, int autosta= rt) ret =3D 0; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -4723,7 +4723,7 @@ libxlDomainSetSchedulerParametersFlags(virDomainPtr d= om, ret =3D 0; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -4989,7 +4989,6 @@ libxlDomainInterfaceStats(virDomainPtr dom, const char *device, virDomainInterfaceStatsPtr stats) { - libxlDriverPrivate *driver =3D dom->conn->privateData; virDomainObj *vm; virDomainNetDef *net =3D NULL; int ret =3D -1; @@ -5016,7 +5015,7 @@ libxlDomainInterfaceStats(virDomainPtr dom, ret =3D 0; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -5189,7 +5188,7 @@ libxlDomainMemoryStats(virDomainPtr dom, ret =3D i; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: libxl_dominfo_dispose(&d_info); @@ -5511,7 +5510,6 @@ libxlDomainBlockStats(virDomainPtr dom, const char *path, virDomainBlockStatsPtr stats) { - libxlDriverPrivate *driver =3D dom->conn->privateData; virDomainObj *vm; libxlBlockStats blkstats; int ret =3D -1; @@ -5542,7 +5540,7 @@ libxlDomainBlockStats(virDomainPtr dom, stats->errs =3D -1; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -5556,7 +5554,6 @@ libxlDomainBlockStatsFlags(virDomainPtr dom, int *nparams, unsigned int flags) { - libxlDriverPrivate *driver =3D dom->conn->privateData; virDomainObj *vm; libxlBlockStats blkstats; int nstats; @@ -5615,7 +5612,7 @@ libxlDomainBlockStatsFlags(virDomainPtr dom, #undef LIBXL_BLKSTAT_ASSIGN_PARAM =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); @@ -6381,7 +6378,7 @@ libxlDomainSetMetadata(virDomainPtr dom, virObjectEventStateQueue(driver->domainEventState, ev); } =20 - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: virDomainObjEndAPI(&vm); diff --git a/src/libxl/libxl_migration.c b/src/libxl/libxl_migration.c index 90cf12ae00..6048540334 100644 --- a/src/libxl/libxl_migration.c +++ b/src/libxl/libxl_migration.c @@ -417,7 +417,7 @@ libxlDomainMigrationSrcBegin(virConnectPtr conn, goto cleanup; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 cleanup: libxlMigrationCookieFree(mig); @@ -604,7 +604,7 @@ libxlDomainMigrationDstPrepareTunnel3(virConnectPtr dco= nn, goto done; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 error: libxlMigrationCookieFree(mig); @@ -774,7 +774,7 @@ libxlDomainMigrationDstPrepare(virConnectPtr dconn, goto done; =20 endjob: - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); =20 error: for (i =3D 0; i < nsocks; i++) { @@ -1155,7 +1155,7 @@ libxlDomainMigrationSrcPerformP2P(libxlDriverPrivate = *driver, * Confirm phase will not be executed if perform fails. End the * job started in begin phase. */ - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); } =20 cleanup: @@ -1226,7 +1226,7 @@ libxlDomainMigrationSrcPerform(libxlDriverPrivate *dr= iver, * Confirm phase will not be executed if perform fails. End the * job started in begin phase. */ - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); } =20 return ret; @@ -1327,7 +1327,7 @@ libxlDomainMigrationDstFinish(virConnectPtr dconn, } =20 /* EndJob for corresponding BeginJob in prepare phase */ - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); virObjectEventStateQueue(driver->domainEventState, event); virObjectUnref(cfg); return dom; @@ -1384,7 +1384,7 @@ libxlDomainMigrationSrcConfirm(libxlDriverPrivate *dr= iver, =20 cleanup: /* EndJob for corresponding BeginJob in begin phase */ - libxlDomainObjEndJob(driver, vm); + virDomainObjEndJob(vm); virObjectEventStateQueue(driver->domainEventState, event); virObjectUnref(cfg); return ret; --=20 2.37.2