From nobody Sat May 4 09:04:38 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.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.133.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=1658238546; cv=none; d=zohomail.com; s=zohoarc; b=MAuLiCj9shkf105fzn578uMRhjATJrqCv4VBIGUe6GNGMUeyt6B7ON7UPrx57x03yMD0Hv7vyr3yATAR8sXkFZsRzblAh0R+usyux+XDfttjXB4TbVC1sAg863kF4X1NG889zx7XJpCHOQvPiKAqWB4ASxm5JzizF+i0FudfUlE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1658238546; 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=Z9cYDuDJFYnYGilQPF4CoJTQrCevCN586MVvGbxCNh4=; b=U502bvGY052Rvp1zKkuieIJ8sV1b7NFxB4ZnMbOOJRi3st0ee+TaMqiExS7lD7DTr1C9FMZgA2LZ03ZmsgGQL+xPiAMAjBO9U9CZkDIIQ576InxzjXS8lHtBJfR18UzDZsnLWR4bglClzUWAKIeQb+1LTAWn8i/dxntzRwF45lY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.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.133.124]) by mx.zohomail.com with SMTPS id 1658238546294632.8859149296372; Tue, 19 Jul 2022 06:49:06 -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-638-8CSDWpVKNAq61Ah_NIrJbg-1; Tue, 19 Jul 2022 09:48:33 -0400 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.rdu2.redhat.com [10.11.54.8]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id D65E31019C96; Tue, 19 Jul 2022 13:48: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 49924C28130; Tue, 19 Jul 2022 13:48:30 +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 15627194707F; Tue, 19 Jul 2022 13:48:30 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 7C6FD1945DA7 for ; Tue, 19 Jul 2022 13:48:28 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 5E72440C128A; Tue, 19 Jul 2022 13:48:28 +0000 (UTC) Received: from fedora.redhat.com (unknown [10.43.2.166]) by smtp.corp.redhat.com (Postfix) with ESMTP id E0BF640C1288 for ; Tue, 19 Jul 2022 13:48:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1658238545; 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=Z9cYDuDJFYnYGilQPF4CoJTQrCevCN586MVvGbxCNh4=; b=Fg9XZmqN7LbAZx4aCEoRh7acgORRUb1Xpk2MBTAhjx3zFN8Lhgh3tpx+s4UiPdPAv+ZqgV Yu0gLuLd6cYTZcVRPqtFnqs/+vag6Y0xkZNHQWypf9dnmyEHCxFYjXxMytY+ytXT9+YQr/ GPyKSxs16U41pfKfyI3PgvO+0Ze11Aw= X-MC-Unique: 8CSDWpVKNAq61Ah_NIrJbg-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Kristina Hanicova To: libvir-list@redhat.com Subject: [PATCH 1/5] qemu & hypervisor: move job object into hypervisor Date: Tue, 19 Jul 2022 15:48:20 +0200 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.11.54.2 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.8 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com 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: 1658238548145100003 Content-Type: text/plain; charset="utf-8"; x-default="true" This patch moves qemuDomainJobObj into hypervisor/ as generalized virDomainJobObj along with generalized private job callbacks as virDomainObjPrivateJobCallbacks. Signed-off-by: Kristina Hanicova Reviewed-by: Michal Privoznik --- src/hypervisor/domain_job.h | 62 ++++++++++++++++++++++++++++++ src/qemu/qemu_domain.c | 6 +-- src/qemu/qemu_domain.h | 2 +- src/qemu/qemu_domainjob.c | 22 +++++------ src/qemu/qemu_domainjob.h | 66 +++----------------------------- src/qemu/qemu_migration.c | 2 +- src/qemu/qemu_migration.h | 2 +- src/qemu/qemu_migration_params.c | 2 +- src/qemu/qemu_process.c | 12 +++--- 9 files changed, 91 insertions(+), 85 deletions(-) diff --git a/src/hypervisor/domain_job.h b/src/hypervisor/domain_job.h index 30f950ec23..c56c22e63c 100644 --- a/src/hypervisor/domain_job.h +++ b/src/hypervisor/domain_job.h @@ -7,6 +7,9 @@ =20 #include "internal.h" #include "virenum.h" +#include "virthread.h" +#include "virbuffer.h" +#include "domain_conf.h" =20 #define JOB_MASK(job) (job =3D=3D 0 ? 0 : 1 << (job - 1)) #define VIR_JOB_DEFAULT_MASK \ @@ -99,6 +102,7 @@ struct _virDomainJobDataPrivateDataCallbacks { virDomainJobDataPrivateDataFree freePrivateData; }; =20 + typedef struct _virDomainJobData virDomainJobData; struct _virDomainJobData { virDomainJobType jobType; @@ -139,3 +143,61 @@ virDomainJobDataCopy(virDomainJobData *data); =20 virDomainJobType virDomainJobStatusToType(virDomainJobStatus status); + + +typedef struct _virDomainObjPrivateJobCallbacks virDomainObjPrivateJobCall= backs; + +typedef struct _virDomainJobObj virDomainJobObj; +struct _virDomainJobObj { + virCond cond; /* Use to coordinate jobs */ + + int jobsQueued; + + /* The following members are for VIR_JOB_* */ + virDomainJob active; /* currently running job */ + unsigned long long owner; /* Thread id which set current job= */ + char *ownerAPI; /* The API which owns the job */ + unsigned long long started; /* When the current job started */ + + /* The following members are for VIR_AGENT_JOB_* */ + virDomainAgentJob agentActive; /* Currently running agent job */ + unsigned long long agentOwner; /* Thread id which set current age= nt job */ + char *agentOwnerAPI; /* The API which owns the agent jo= b */ + unsigned long long agentStarted; /* When the current agent job star= ted */ + + /* The following members are for VIR_ASYNC_JOB_* */ + virCond asyncCond; /* Use to coordinate with async jo= bs */ + virDomainAsyncJob asyncJob; /* Currently active async job */ + unsigned long long asyncOwner; /* Thread which set current async = job */ + char *asyncOwnerAPI; /* The API which owns the async jo= b */ + unsigned long long asyncStarted; /* When the current async job star= ted */ + int phase; /* Job phase (mainly for migration= s) */ + unsigned long long mask; /* Jobs allowed during async job */ + virDomainJobData *current; /* async job progress data */ + virDomainJobData *completed; /* statistics data of a recently comp= leted job */ + bool abortJob; /* abort of the job requested */ + char *error; /* job event completion error */ + unsigned long apiFlags; /* flags passed to the API which started the a= sync job */ + + void *privateData; /* job specific collection of data= */ + virDomainObjPrivateJobCallbacks *cb; +}; + + +typedef void *(*virDomainObjPrivateJobAlloc)(void); +typedef void (*virDomainObjPrivateJobFree)(void *); +typedef void (*virDomainObjPrivateJobReset)(void *); +typedef int (*virDomainObjPrivateJobFormat)(virBuffer *, + virDomainJobObj *, + virDomainObj *); +typedef int (*virDomainObjPrivateJobParse)(xmlXPathContextPtr, + virDomainJobObj *, + virDomainObj *); + +struct _virDomainObjPrivateJobCallbacks { + virDomainObjPrivateJobAlloc allocJobPrivate; + virDomainObjPrivateJobFree freeJobPrivate; + virDomainObjPrivateJobReset resetJobPrivate; + virDomainObjPrivateJobFormat formatJob; + virDomainObjPrivateJobParse parseJob; +}; diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 94b2e3118c..a643dd03af 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -199,7 +199,7 @@ qemuDomainObjPrivateXMLFormatMigrateTempBitmap(virBuffe= r *buf, =20 static int qemuDomainFormatJobPrivate(virBuffer *buf, - qemuDomainJobObj *job, + virDomainJobObj *job, virDomainObj *vm) { qemuDomainJobPrivate *priv =3D job->privateData; @@ -342,7 +342,7 @@ qemuDomainObjPrivateXMLParseMigrateTempBitmap(qemuDomai= nJobPrivate *jobPriv, =20 static int qemuDomainParseJobPrivate(xmlXPathContextPtr ctxt, - qemuDomainJobObj *job, + virDomainJobObj *job, virDomainObj *vm) { qemuDomainJobPrivate *priv =3D job->privateData; @@ -360,7 +360,7 @@ qemuDomainParseJobPrivate(xmlXPathContextPtr ctxt, } =20 =20 -static qemuDomainObjPrivateJobCallbacks qemuPrivateJobCallbacks =3D { +static virDomainObjPrivateJobCallbacks qemuPrivateJobCallbacks =3D { .allocJobPrivate =3D qemuJobAllocPrivate, .freeJobPrivate =3D qemuJobFreePrivate, .resetJobPrivate =3D qemuJobResetPrivate, diff --git a/src/qemu/qemu_domain.h b/src/qemu/qemu_domain.h index 499ad03f91..4680df1098 100644 --- a/src/qemu/qemu_domain.h +++ b/src/qemu/qemu_domain.h @@ -99,7 +99,7 @@ typedef struct _qemuDomainObjPrivate qemuDomainObjPrivate; struct _qemuDomainObjPrivate { virQEMUDriver *driver; =20 - qemuDomainJobObj job; + virDomainJobObj job; =20 virBitmap *namespaces; =20 diff --git a/src/qemu/qemu_domainjob.c b/src/qemu/qemu_domainjob.c index 1f6d976558..05480239b1 100644 --- a/src/qemu/qemu_domainjob.c +++ b/src/qemu/qemu_domainjob.c @@ -151,8 +151,8 @@ qemuDomainEventEmitJobCompleted(virQEMUDriver *driver, =20 =20 int -qemuDomainObjInitJob(qemuDomainJobObj *job, - qemuDomainObjPrivateJobCallbacks *cb) +qemuDomainObjInitJob(virDomainJobObj *job, + virDomainObjPrivateJobCallbacks *cb) { memset(job, 0, sizeof(*job)); job->cb =3D cb; @@ -177,7 +177,7 @@ qemuDomainObjInitJob(qemuDomainJobObj *job, =20 =20 static void -qemuDomainObjResetJob(qemuDomainJobObj *job) +qemuDomainObjResetJob(virDomainJobObj *job) { job->active =3D VIR_JOB_NONE; job->owner =3D 0; @@ -187,7 +187,7 @@ qemuDomainObjResetJob(qemuDomainJobObj *job) =20 =20 static void -qemuDomainObjResetAgentJob(qemuDomainJobObj *job) +qemuDomainObjResetAgentJob(virDomainJobObj *job) { job->agentActive =3D VIR_AGENT_JOB_NONE; job->agentOwner =3D 0; @@ -197,7 +197,7 @@ qemuDomainObjResetAgentJob(qemuDomainJobObj *job) =20 =20 static void -qemuDomainObjResetAsyncJob(qemuDomainJobObj *job) +qemuDomainObjResetAsyncJob(virDomainJobObj *job) { job->asyncJob =3D VIR_ASYNC_JOB_NONE; job->asyncOwner =3D 0; @@ -226,7 +226,7 @@ qemuDomainObjResetAsyncJob(qemuDomainJobObj *job) */ int qemuDomainObjPreserveJob(virDomainObj *obj, - qemuDomainJobObj *job) + virDomainJobObj *job) { qemuDomainObjPrivate *priv =3D obj->privateData; =20 @@ -262,7 +262,7 @@ qemuDomainObjRestoreAsyncJob(virDomainObj *vm, unsigned long long allowedJobs) { qemuDomainObjPrivate *priv =3D vm->privateData; - qemuDomainJobObj *job =3D &priv->job; + virDomainJobObj *job =3D &priv->job; =20 VIR_DEBUG("Restoring %s async job for domain %s", virDomainAsyncJobTypeToString(asyncJob), vm->def->name); @@ -287,7 +287,7 @@ qemuDomainObjRestoreAsyncJob(virDomainObj *vm, =20 =20 void -qemuDomainObjClearJob(qemuDomainJobObj *job) +qemuDomainObjClearJob(virDomainJobObj *job) { qemuDomainObjResetJob(job); qemuDomainObjResetAsyncJob(job); @@ -820,7 +820,7 @@ qemuDomainObjReleaseAsyncJob(virDomainObj *obj) } =20 static bool -qemuDomainNestedJobAllowed(qemuDomainJobObj *jobs, virDomainJob newJob) +qemuDomainNestedJobAllowed(virDomainJobObj *jobs, virDomainJob newJob) { return !jobs->asyncJob || newJob =3D=3D VIR_JOB_NONE || @@ -828,7 +828,7 @@ qemuDomainNestedJobAllowed(qemuDomainJobObj *jobs, virD= omainJob newJob) } =20 static bool -qemuDomainObjCanSetJob(qemuDomainJobObj *job, +qemuDomainObjCanSetJob(virDomainJobObj *job, virDomainJob newJob, virDomainAgentJob newAgentJob) { @@ -1308,7 +1308,7 @@ qemuDomainObjPrivateXMLParseJob(virDomainObj *vm, xmlXPathContextPtr ctxt) { qemuDomainObjPrivate *priv =3D vm->privateData; - qemuDomainJobObj *job =3D &priv->job; + virDomainJobObj *job =3D &priv->job; VIR_XPATH_NODE_AUTORESTORE(ctxt) g_autofree char *tmp =3D NULL; =20 diff --git a/src/qemu/qemu_domainjob.h b/src/qemu/qemu_domainjob.h index e8021a7f04..b39b04edcb 100644 --- a/src/qemu/qemu_domainjob.h +++ b/src/qemu/qemu_domainjob.h @@ -60,62 +60,6 @@ struct _qemuDomainJobDataPrivate { =20 extern virDomainJobDataPrivateDataCallbacks qemuJobDataPrivateDataCallback= s; =20 -typedef struct _qemuDomainJobObj qemuDomainJobObj; - -typedef void *(*qemuDomainObjPrivateJobAlloc)(void); -typedef void (*qemuDomainObjPrivateJobFree)(void *); -typedef void (*qemuDomainObjPrivateJobReset)(void *); -typedef int (*qemuDomainObjPrivateJobFormat)(virBuffer *, - qemuDomainJobObj *, - virDomainObj *); -typedef int (*qemuDomainObjPrivateJobParse)(xmlXPathContextPtr, - qemuDomainJobObj *, - virDomainObj *); - -typedef struct _qemuDomainObjPrivateJobCallbacks qemuDomainObjPrivateJobCa= llbacks; -struct _qemuDomainObjPrivateJobCallbacks { - qemuDomainObjPrivateJobAlloc allocJobPrivate; - qemuDomainObjPrivateJobFree freeJobPrivate; - qemuDomainObjPrivateJobReset resetJobPrivate; - qemuDomainObjPrivateJobFormat formatJob; - qemuDomainObjPrivateJobParse parseJob; -}; - -struct _qemuDomainJobObj { - virCond cond; /* Use to coordinate jobs */ - - int jobsQueued; - - /* The following members are for VIR_JOB_* */ - virDomainJob active; /* Currently running job */ - unsigned long long owner; /* Thread id which set current job= */ - char *ownerAPI; /* The API which owns the job */ - unsigned long long started; /* When the current job started */ - - /* The following members are for VIR_AGENT_JOB_* */ - virDomainAgentJob agentActive; /* Currently running agent job */ - unsigned long long agentOwner; /* Thread id which set current age= nt job */ - char *agentOwnerAPI; /* The API which owns the agent jo= b */ - unsigned long long agentStarted; /* When the current agent job star= ted */ - - /* The following members are for VIR_ASYNC_JOB_* */ - virCond asyncCond; /* Use to coordinate with async jo= bs */ - virDomainAsyncJob asyncJob; /* Currently active async job */ - unsigned long long asyncOwner; /* Thread which set current async = job */ - char *asyncOwnerAPI; /* The API which owns the async jo= b */ - unsigned long long asyncStarted; /* When the current async job star= ted */ - int phase; /* Job phase (mainly for migration= s) */ - unsigned long long mask; /* Jobs allowed during async job */ - virDomainJobData *current; /* async job progress data */ - virDomainJobData *completed; /* statistics data of a recently comp= leted job */ - bool abortJob; /* abort of the job requested */ - char *error; /* job event completion error */ - unsigned long apiFlags; /* flags passed to the API which started the a= sync job */ - - void *privateData; /* job specific collection of data= */ - qemuDomainObjPrivateJobCallbacks *cb; -}; - void qemuDomainJobSetStatsType(virDomainJobData *jobData, qemuDomainJobStatsType type); =20 @@ -162,7 +106,7 @@ qemuDomainObjStartJobPhase(virDomainObj *obj, void qemuDomainObjSetAsyncJobMask(virDomainObj *obj, unsigned long long allowedJobs); int qemuDomainObjPreserveJob(virDomainObj *obj, - qemuDomainJobObj *job); + virDomainJobObj *job); void qemuDomainObjRestoreAsyncJob(virDomainObj *vm, virDomainAsyncJob asyncJob, @@ -191,12 +135,12 @@ int qemuDomainJobDataToParams(virDomainJobData *jobDa= ta, =20 bool qemuDomainTrackJob(virDomainJob job); =20 -void qemuDomainObjClearJob(qemuDomainJobObj *job); -G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC(qemuDomainJobObj, qemuDomainObjClearJob); +void qemuDomainObjClearJob(virDomainJobObj *job); +G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC(virDomainJobObj, qemuDomainObjClearJob); =20 int -qemuDomainObjInitJob(qemuDomainJobObj *job, - qemuDomainObjPrivateJobCallbacks *cb); +qemuDomainObjInitJob(virDomainJobObj *job, + virDomainObjPrivateJobCallbacks *cb); =20 int qemuDomainObjPrivateXMLFormatJob(virBuffer *buf, diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c index b12cb518ee..b096e56824 100644 --- a/src/qemu/qemu_migration.c +++ b/src/qemu/qemu_migration.c @@ -6385,7 +6385,7 @@ qemuMigrationDstComplete(virQEMUDriver *driver, virDomainObj *vm, bool inPostCopy, virDomainAsyncJob asyncJob, - qemuDomainJobObj *job) + virDomainJobObj *job) { qemuDomainObjPrivate *priv =3D vm->privateData; qemuDomainJobPrivate *jobPriv =3D job->privateData; diff --git a/src/qemu/qemu_migration.h b/src/qemu/qemu_migration.h index 81cc1e91c0..65c29d5744 100644 --- a/src/qemu/qemu_migration.h +++ b/src/qemu/qemu_migration.h @@ -204,7 +204,7 @@ qemuMigrationDstComplete(virQEMUDriver *driver, virDomainObj *vm, bool inPostCopy, virDomainAsyncJob asyncJob, - qemuDomainJobObj *job); + virDomainJobObj *job); =20 int qemuMigrationSrcConfirm(virQEMUDriver *driver, diff --git a/src/qemu/qemu_migration_params.c b/src/qemu/qemu_migration_par= ams.c index 0bce358ac3..1fd0c55905 100644 --- a/src/qemu/qemu_migration_params.c +++ b/src/qemu/qemu_migration_params.c @@ -1181,7 +1181,7 @@ qemuMigrationParamsGetULL(qemuMigrationParams *migPar= ams, * qemuMigrationParamsCheck: * * Check supported migration parameters and keep their original values in - * qemuDomainJobObj so that we can properly reset them at the end of migra= tion. + * virDomainJobObj so that we can properly reset them at the end of migrat= ion. * Reports an error if any of the currently used capabilities in @migParams * are unsupported by QEMU. */ diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index 486be9344a..d42333195a 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -3457,7 +3457,7 @@ qemuProcessCleanupMigrationJob(virQEMUDriver *driver, =20 static void qemuProcessRestoreMigrationJob(virDomainObj *vm, - qemuDomainJobObj *job) + virDomainJobObj *job) { qemuDomainObjPrivate *priv =3D vm->privateData; qemuDomainJobPrivate *jobPriv =3D job->privateData; @@ -3496,7 +3496,7 @@ qemuProcessRestoreMigrationJob(virDomainObj *vm, static int qemuProcessRecoverMigrationIn(virQEMUDriver *driver, virDomainObj *vm, - qemuDomainJobObj *job, + virDomainJobObj *job, virDomainState state) { VIR_DEBUG("Active incoming migration in phase %s", @@ -3567,7 +3567,7 @@ qemuProcessRecoverMigrationIn(virQEMUDriver *driver, static int qemuProcessRecoverMigrationOut(virQEMUDriver *driver, virDomainObj *vm, - qemuDomainJobObj *job, + virDomainJobObj *job, virDomainJobStatus migStatus, virDomainState state, int reason, @@ -3673,7 +3673,7 @@ qemuProcessRecoverMigrationOut(virQEMUDriver *driver, static int qemuProcessRecoverMigration(virQEMUDriver *driver, virDomainObj *vm, - qemuDomainJobObj *job, + virDomainJobObj *job, unsigned int *stopFlags) { virDomainJobStatus migStatus =3D VIR_DOMAIN_JOB_STATUS_NONE; @@ -3735,7 +3735,7 @@ qemuProcessRecoverMigration(virQEMUDriver *driver, static int qemuProcessRecoverJob(virQEMUDriver *driver, virDomainObj *vm, - qemuDomainJobObj *job, + virDomainJobObj *job, unsigned int *stopFlags) { qemuDomainObjPrivate *priv =3D vm->privateData; @@ -8866,7 +8866,7 @@ qemuProcessReconnect(void *opaque) virQEMUDriver *driver =3D data->driver; virDomainObj *obj =3D data->obj; qemuDomainObjPrivate *priv; - g_auto(qemuDomainJobObj) oldjob =3D { + g_auto(virDomainJobObj) oldjob =3D { .cb =3D NULL, }; int state; --=20 2.35.3 From nobody Sat May 4 09:04:38 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of redhat.com designates 170.10.133.124 as permitted sender) client-ip=170.10.133.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.133.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=1658238531; cv=none; d=zohomail.com; s=zohoarc; b=COBxntYPZ2UlGf/CTY76IwzU7q690oOyykwq81x9KSnB+IPsanhxmQ1S3i7q1sc51TDNFaikAQs/0Gjj38FiS9D0qO2+1+huYOFFikzO8RA0HNig/WSL1knMXZCc6V37MZj+4Fufo3Apy3/EREt3oLRqRFzAFkq5nwSDSN5Vw/Y= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1658238531; 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=yfYsvw2iY1pj1e/Zu5D8fYVj4rd0d1tOIQayyzUWhTU=; b=gP2RiRQ9bvzMTbTA3lbRIVafZZd02mYs29zBSq2eAvMDYvHGY0g4Lv+wG8XrmxgpvJA2mLCJx4ceODhBXFMWRRH4MWzHb3hH+BvuLCIKu/htfk62TNKKokkAQP8HtsmrFrHITba5OolyPXfTifinGLBUTqdpCs/lcnWheJtD9kw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of redhat.com designates 170.10.133.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.133.124]) by mx.zohomail.com with SMTPS id 1658238531573523.684918527206; Tue, 19 Jul 2022 06:48:51 -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-408-XjNPCrBDPd2NuaL7eHm7kg-1; Tue, 19 Jul 2022 09:48:33 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 160628047D6; Tue, 19 Jul 2022 13:48:31 +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 F0CB240CFD0B; Tue, 19 Jul 2022 13:48:30 +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 797C2192528B; Tue, 19 Jul 2022 13:48:30 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 296E219451EC for ; Tue, 19 Jul 2022 13:48:29 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id EBD2840C128A; Tue, 19 Jul 2022 13:48:28 +0000 (UTC) Received: from fedora.redhat.com (unknown [10.43.2.166]) by smtp.corp.redhat.com (Postfix) with ESMTP id 9658540C1288 for ; Tue, 19 Jul 2022 13:48:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1658238530; 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=yfYsvw2iY1pj1e/Zu5D8fYVj4rd0d1tOIQayyzUWhTU=; b=ZOzwK6pmkkSXeHuFcxp2PxoFbQHtO8NUVQ2cpFT/V8PY4eStpC4Zi4Ajfy476yI5BVvVuy Jpgb+b9+pF890jKWXCpOSfjS5+EKeE2oGjglplk9TlzKv+ENw0df9lBxMaqo6j2dWdJ1x9 13vQJswOeSEjgpGo5GUwJydXzzLeyVI= X-MC-Unique: XjNPCrBDPd2NuaL7eHm7kg-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Kristina Hanicova To: libvir-list@redhat.com Subject: [PATCH 2/5] hypervisor: domain_job: rename members in virDomainObjPrivateJobCallbacks Date: Tue, 19 Jul 2022 15:48:21 +0200 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.11.54.2 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.84 on 10.11.54.1 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com 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: 1658238531943100001 Content-Type: text/plain; charset="utf-8"; x-default="true" This patch alters members of virDomainObjPrivateJobCallbacks to make the code more consistent. Signed-off-by: Kristina Hanicova Reviewed-by: Michal Privoznik --- src/hypervisor/domain_job.h | 4 ++-- src/qemu/qemu_domain.c | 4 ++-- src/qemu/qemu_domainjob.c | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/hypervisor/domain_job.h b/src/hypervisor/domain_job.h index c56c22e63c..7d9c715957 100644 --- a/src/hypervisor/domain_job.h +++ b/src/hypervisor/domain_job.h @@ -198,6 +198,6 @@ struct _virDomainObjPrivateJobCallbacks { virDomainObjPrivateJobAlloc allocJobPrivate; virDomainObjPrivateJobFree freeJobPrivate; virDomainObjPrivateJobReset resetJobPrivate; - virDomainObjPrivateJobFormat formatJob; - virDomainObjPrivateJobParse parseJob; + virDomainObjPrivateJobFormat formatJobPrivate; + virDomainObjPrivateJobParse parseJobPrivate; }; diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index a643dd03af..2d7f6d761d 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -364,8 +364,8 @@ static virDomainObjPrivateJobCallbacks qemuPrivateJobCa= llbacks =3D { .allocJobPrivate =3D qemuJobAllocPrivate, .freeJobPrivate =3D qemuJobFreePrivate, .resetJobPrivate =3D qemuJobResetPrivate, - .formatJob =3D qemuDomainFormatJobPrivate, - .parseJob =3D qemuDomainParseJobPrivate, + .formatJobPrivate =3D qemuDomainFormatJobPrivate, + .parseJobPrivate =3D qemuDomainParseJobPrivate, }; =20 /** diff --git a/src/qemu/qemu_domainjob.c b/src/qemu/qemu_domainjob.c index 05480239b1..b4082a12e3 100644 --- a/src/qemu/qemu_domainjob.c +++ b/src/qemu/qemu_domainjob.c @@ -1294,7 +1294,7 @@ qemuDomainObjPrivateXMLFormatJob(virBuffer *buf, } =20 if (priv->job.cb && - priv->job.cb->formatJob(&childBuf, &priv->job, vm) < 0) + priv->job.cb->formatJobPrivate(&childBuf, &priv->job, vm) < 0) return -1; =20 virXMLFormatElement(buf, "job", &attrBuf, &childBuf); @@ -1362,7 +1362,7 @@ qemuDomainObjPrivateXMLParseJob(virDomainObj *vm, } =20 if (priv->job.cb && - priv->job.cb->parseJob(ctxt, job, vm) < 0) + priv->job.cb->parseJobPrivate(ctxt, job, vm) < 0) return -1; =20 return 0; --=20 2.35.3 From nobody Sat May 4 09:04:38 2024 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=1658238522; cv=none; d=zohomail.com; s=zohoarc; b=hU8ruQB9uJ0r5HqwUf9u4DwhmLv2zHKgXbimcM2LRplO7f6uYP2af/rgFrohUbljmKPwAw+qqs3/YIHfEgrddVGxvxSer05z3nHvEBjofcdl2iqWv3qYfBNSHGJeNpPESMCoa9oRg9CPyEEptzo1ZqOaQLJOEOG2xyPAIYtw09o= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1658238522; 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=7UIN5idvC8PPR5jyXoCEYCsIA05qP0txhvd8Wfgh2g0=; b=ckEgWP1fB9X0hqxsPReRRS4WX9dbD+byd+LzPAB2bwpNHIEBZ86pZRJhiMTbuYYbdFuRUzYqI6RKVBx12V62WzfWHF6I1NwWPi0kTHBHt5GKmKWWi26oxKCEZ3N5OEPyOyHA0wJxcUq2zq0ylnShew8Y8PPaOxZP3Fj1/V1CdbM= 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 1658238522329387.19699046648043; Tue, 19 Jul 2022 06:48:42 -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-155-Owny8CDyM3y0maGIa799sQ-1; Tue, 19 Jul 2022 09:48:37 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 35E1118A652D; Tue, 19 Jul 2022 13:48:32 +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 1AF752166B2F; Tue, 19 Jul 2022 13:48:32 +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 53AAA19252B4; Tue, 19 Jul 2022 13:48:31 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id A60C6194707E for ; Tue, 19 Jul 2022 13:48:29 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 8358440C128A; Tue, 19 Jul 2022 13:48:29 +0000 (UTC) Received: from fedora.redhat.com (unknown [10.43.2.166]) by smtp.corp.redhat.com (Postfix) with ESMTP id 2E6B040C1288 for ; Tue, 19 Jul 2022 13:48:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1658238521; 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=7UIN5idvC8PPR5jyXoCEYCsIA05qP0txhvd8Wfgh2g0=; b=Esp5C2NwDd5kvAFDVXMLQeNtdHCS8+Dbv4MeHsrGYeYIV2e3mTKf2jGq3D9K3jjAbCCePf Q4MBiINOvp+4GikSOjBest363B38/SVRqHrffMche5I9ieW+QjUzSK192p/kUxDPxZrdGq JxchTVtAqOSjG6eIP6ZD6f1LGePk7Y8= X-MC-Unique: Owny8CDyM3y0maGIa799sQ-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Kristina Hanicova To: libvir-list@redhat.com Subject: [PATCH 3/5] LXC: use virDomainJobObj Date: Tue, 19 Jul 2022 15:48:22 +0200 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.11.54.2 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.78 on 10.11.54.6 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com 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: 1658238523896100001 Content-Type: text/plain; charset="utf-8"; x-default="true" This patch replaces struct virLXCDomainJobObj with generalized virDomainJobObj. Signed-off-by: Kristina Hanicova Reviewed-by: Michal Privoznik --- src/lxc/lxc_domain.c | 4 ++-- src/lxc/lxc_domain.h | 9 +-------- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/src/lxc/lxc_domain.c b/src/lxc/lxc_domain.c index 4c7265e40c..16b667de95 100644 --- a/src/lxc/lxc_domain.c +++ b/src/lxc/lxc_domain.c @@ -49,7 +49,7 @@ virLXCDomainObjInitJob(virLXCDomainObjPrivate *priv) static void virLXCDomainObjResetJob(virLXCDomainObjPrivate *priv) { - struct virLXCDomainJobObj *job =3D &priv->job; + virDomainJobObj *job =3D &priv->job; =20 job->active =3D VIR_JOB_NONE; job->owner =3D 0; @@ -103,7 +103,7 @@ virLXCDomainObjBeginJob(virLXCDriver *driver G_GNUC_UNU= SED, =20 error: VIR_WARN("Cannot start job (%s) for domain %s;" - " current job is (%s) owned by (%d)", + " current job is (%s) owned by (%llu)", virDomainJobTypeToString(job), obj->def->name, virDomainJobTypeToString(priv->job.active), diff --git a/src/lxc/lxc_domain.h b/src/lxc/lxc_domain.h index d91dcca04b..82c36eb940 100644 --- a/src/lxc/lxc_domain.h +++ b/src/lxc/lxc_domain.h @@ -54,13 +54,6 @@ struct _lxcDomainDef { }; =20 =20 -struct virLXCDomainJobObj { - virCond cond; /* Use to coordinate jobs */ - virDomainJob active; /* Currently running job */ - int owner; /* Thread which set current job */ -}; - - typedef struct _virLXCDomainObjPrivate virLXCDomainObjPrivate; struct _virLXCDomainObjPrivate { virLXCDriver *driver; @@ -74,7 +67,7 @@ struct _virLXCDomainObjPrivate { virCgroup *cgroup; char *machineName; =20 - struct virLXCDomainJobObj job; + virDomainJobObj job; }; =20 extern virXMLNamespace virLXCDriverDomainXMLNamespace; --=20 2.35.3 From nobody Sat May 4 09:04:38 2024 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=1658238519; cv=none; d=zohomail.com; s=zohoarc; b=fgDhb71QF7J1SATPfMGSt83jN16LtYZSF6P7jP36YW8muq/YJ7gbyc/blWQLeJHYeUwMpGfIvp7KaDCSFrNCbp6GSwSx5KxNyr2clJJ3x+Cn+B+iYO+rTuIAHbEHESERHJhXcfSv4UYDmNk8E5cTQ/8mxu+AgNJj3Ts35Z6PTQ8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1658238519; 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=AlqGYZ41zRFSprxG988XtiwCQt50Ll0kGSmvFOGaGNE=; b=XpN3ENOg3pok9Sq1nmFPX+1I1U0KzjSjAjxdjGH21RIbJbReQYZnKLvZf/m94bGMi1VL7VgkiMOGHTv9m/ofIdz2Dx7M293w7PcUh79NcSsDtj9CKFc58Eijrk7O1YRgeHtn6/Hb3JGwKlY+oB2mljP04ooJquZRi5+diQHbyng= 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 1658238519231248.4330958942178; Tue, 19 Jul 2022 06:48:39 -0700 (PDT) Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-111-5-ElvsxiMVe9-BM_8khp8Q-1; Tue, 19 Jul 2022 09:48:34 -0400 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id B69EE1C01B45; Tue, 19 Jul 2022 13:48:31 +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 A01B12026D64; Tue, 19 Jul 2022 13:48:31 +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 00D91192528C; Tue, 19 Jul 2022 13:48:31 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id 2CF43192528E for ; Tue, 19 Jul 2022 13:48:30 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id 1B8E540C128A; Tue, 19 Jul 2022 13:48:30 +0000 (UTC) Received: from fedora.redhat.com (unknown [10.43.2.166]) by smtp.corp.redhat.com (Postfix) with ESMTP id BA4E140C1288 for ; Tue, 19 Jul 2022 13:48:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1658238518; 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=AlqGYZ41zRFSprxG988XtiwCQt50Ll0kGSmvFOGaGNE=; b=By88BXRG/VpR1yce8vFp0m5fJ59WNrzMxA+qT2TTF+DCR7JOGpyOrcj/R+CEmEhGsgzDov VjwYwvZCj+Of7VjCZCGrh9Vrj8UBHuMatGSinrqmsCBhn4A/qXZhX/24q60tU7hYNQscjy 207BYSbms/uFcJspRE4+IjihV4/US8Q= X-MC-Unique: 5-ElvsxiMVe9-BM_8khp8Q-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Kristina Hanicova To: libvir-list@redhat.com Subject: [PATCH 4/5] libxl: use virDomainJobObj Date: Tue, 19 Jul 2022 15:48:23 +0200 Message-Id: <10d899c7cbf7c22582096e9389fee3f69d0f1cea.1658237781.git.khanicov@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.11.54.2 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.78 on 10.11.54.4 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com 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: 1658238520086100001 Content-Type: text/plain; charset="utf-8"; x-default="true" This patch replaces struct libxlDomainJobObj with generalized virDomainJobObj. Signed-off-by: Kristina Hanicova Reviewed-by: Michal Privoznik --- src/libxl/libxl_domain.c | 6 +++--- src/libxl/libxl_domain.h | 11 ++--------- 2 files changed, 5 insertions(+), 12 deletions(-) diff --git a/src/libxl/libxl_domain.c b/src/libxl/libxl_domain.c index 49577d6328..ce515ec54e 100644 --- a/src/libxl/libxl_domain.c +++ b/src/libxl/libxl_domain.c @@ -60,7 +60,7 @@ libxlDomainObjInitJob(libxlDomainObjPrivate *priv) static void libxlDomainObjResetJob(libxlDomainObjPrivate *priv) { - struct libxlDomainJobObj *job =3D &priv->job; + virDomainJobObj *job =3D &priv->job; =20 job->active =3D VIR_JOB_NONE; job->owner =3D 0; @@ -117,7 +117,7 @@ libxlDomainObjBeginJob(libxlDriverPrivate *driver G_GNU= C_UNUSED, =20 error: VIR_WARN("Cannot start job (%s) for domain %s;" - " current job is (%s) owned by (%d)", + " current job is (%s) owned by (%llu)", virDomainJobTypeToString(job), obj->def->name, virDomainJobTypeToString(priv->job.active), @@ -158,7 +158,7 @@ libxlDomainObjEndJob(libxlDriverPrivate *driver G_GNUC_= UNUSED, } =20 int -libxlDomainJobUpdateTime(struct libxlDomainJobObj *job) +libxlDomainJobUpdateTime(virDomainJobObj *job) { virDomainJobData *jobData =3D job->current; unsigned long long now; diff --git a/src/libxl/libxl_domain.h b/src/libxl/libxl_domain.h index 5ce4d518a9..5843a4921f 100644 --- a/src/libxl/libxl_domain.h +++ b/src/libxl/libxl_domain.h @@ -27,13 +27,6 @@ #include "domain_job.h" =20 =20 -struct libxlDomainJobObj { - virCond cond; /* Use to coordinate jobs */ - virDomainJob active; /* Currently running job */ - int owner; /* Thread which set current job */ - virDomainJobData *current; /* Statistics for the current job */ -}; - typedef struct _libxlDomainObjPrivate libxlDomainObjPrivate; struct _libxlDomainObjPrivate { /* console */ @@ -44,7 +37,7 @@ struct _libxlDomainObjPrivate { char *lockState; bool lockProcessRunning; =20 - struct libxlDomainJobObj job; + virDomainJobObj job; =20 bool hookRun; /* true if there was a hook run over this domain */ }; @@ -69,7 +62,7 @@ libxlDomainObjEndJob(libxlDriverPrivate *driver, virDomainObj *obj); =20 int -libxlDomainJobUpdateTime(struct libxlDomainJobObj *job) +libxlDomainJobUpdateTime(virDomainJobObj *job) G_GNUC_WARN_UNUSED_RESULT; =20 char * --=20 2.35.3 From nobody Sat May 4 09:04:38 2024 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=1658238522; cv=none; d=zohomail.com; s=zohoarc; b=KGQpc6Y0PefU9/DiOIgFpltLnpUuxKCtTYIHwgKG5bzLmsx713WiCXoOfdtG8p2CSnKKEE/obMLArKd8lElH0ntn7gnOKL6XmR2lHZjfhYtrDQVLLVNhjDKbtk8OFL7p9yINeHRsve9Y7VvpII3t7rs2pk760ZoFyt/bFY+YMJE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1658238522; 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=hRmDQhH0rb9Vh2hU3+7IkZgaHM/++H/5WrGogD4q1/Q=; b=WIZU4PCm1lEZ/jOOS7uMG24jhRiweBQs5UkfIb0QEH+8MGGB7KYyx883/Oa9eAg77OV78m/VrRDOmJuEkdk5Ii1hsqhhvI0ACLCTBUHpAt9CAUQgNL9vs27VcFqs5+UtUek0dj60J2rqhGn/YFlRkMlfWC2KkUOKqx1IFfhXNwE= 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 1658238522272848.8373987437166; Tue, 19 Jul 2022 06:48:42 -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-79-FUKwocLeMOGzlkEUgmFqGw-1; Tue, 19 Jul 2022 09:48:37 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 50F80800DBC; Tue, 19 Jul 2022 13:48:34 +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 0387C40CF8E5; Tue, 19 Jul 2022 13:48:34 +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 BB9A41947070; Tue, 19 Jul 2022 13:48:33 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.rdu2.redhat.com [10.11.54.2]) by mm-prod-listman-01.mail-001.prod.us-east-1.aws.redhat.com (Postfix) with ESMTP id CC4F01923CB3 for ; Tue, 19 Jul 2022 13:48:30 +0000 (UTC) Received: by smtp.corp.redhat.com (Postfix) id A76A840D282F; Tue, 19 Jul 2022 13:48:30 +0000 (UTC) Received: from fedora.redhat.com (unknown [10.43.2.166]) by smtp.corp.redhat.com (Postfix) with ESMTP id 52C6840C1288 for ; Tue, 19 Jul 2022 13:48:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1658238521; 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=hRmDQhH0rb9Vh2hU3+7IkZgaHM/++H/5WrGogD4q1/Q=; b=KSTpBnrmuGCoKAhrnS1/jIUTHmP17VL5muTXIHLbnOeZUaVC3+odlCDxhmIvLR8LuaPxaw zdedH5tYyjDX3AOTEdQAQPTXq5EmBt2Eiwwl5F3esjzYcg2IyIzwk8klDnTqM+V0lW5h7v vePFsNcRfb3EH0XZYFUDId18Duol5C4= X-MC-Unique: FUKwocLeMOGzlkEUgmFqGw-1 X-Original-To: libvir-list@listman.corp.redhat.com From: Kristina Hanicova To: libvir-list@redhat.com Subject: [PATCH 5/5] CH: use virDomainJobObj Date: Tue, 19 Jul 2022 15:48:24 +0200 Message-Id: <29f9312fc3242eff98d618e6c709c4188f48371e.1658237781.git.khanicov@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.11.54.2 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.84 on 10.11.54.1 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=libvir-list-bounces@redhat.com 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: 1658238523897100002 Content-Type: text/plain; charset="utf-8"; x-default="true" This patch replaces struct virCHDomainJobObj with generalized virDomainJobObj. Signed-off-by: Kristina Hanicova Reviewed-by: Michal Privoznik --- src/ch/ch_domain.c | 4 ++-- src/ch/ch_domain.h | 9 +-------- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/src/ch/ch_domain.c b/src/ch/ch_domain.c index 62a6f7a9d6..2afb3582b1 100644 --- a/src/ch/ch_domain.c +++ b/src/ch/ch_domain.c @@ -46,7 +46,7 @@ virCHDomainObjInitJob(virCHDomainObjPrivate *priv) static void virCHDomainObjResetJob(virCHDomainObjPrivate *priv) { - struct virCHDomainJobObj *job =3D &priv->job; + virDomainJobObj *job =3D &priv->job; =20 job->active =3D VIR_JOB_NONE; job->owner =3D 0; @@ -83,7 +83,7 @@ virCHDomainObjBeginJob(virDomainObj *obj, virDomainJob jo= b) virDomainJobTypeToString(job)); if (virCondWaitUntil(&priv->job.cond, &obj->parent.lock, then) < 0= ) { VIR_WARN("Cannot start job (%s) for domain %s;" - " current job is (%s) owned by (%d)", + " current job is (%s) owned by (%llu)", virDomainJobTypeToString(job), obj->def->name, virDomainJobTypeToString(priv->job.active), diff --git a/src/ch/ch_domain.h b/src/ch/ch_domain.h index f75a08ec87..b3bebd6b9a 100644 --- a/src/ch/ch_domain.h +++ b/src/ch/ch_domain.h @@ -30,16 +30,9 @@ #define CH_JOB_WAIT_TIME (1000ull * 30) =20 =20 -struct virCHDomainJobObj { - virCond cond; /* Use to coordinate jobs */ - virDomainJob active; /* Currently running job */ - int owner; /* Thread which set current job */ -}; - - typedef struct _virCHDomainObjPrivate virCHDomainObjPrivate; struct _virCHDomainObjPrivate { - struct virCHDomainJobObj job; + virDomainJobObj job; =20 virChrdevs *chrdevs; virCHDriver *driver; --=20 2.35.3