On Thu, Aug 08, 2024 at 13:41:03 +0200, Jiri Denemark wrote:
> This patch adds support for recognizing the new migration state reported
> by QEMU when post-copy recovery is requested. It is not actually used
> for anything yet.
>
> Signed-off-by: Jiri Denemark <[email protected]>
> ---
> src/conf/virdomainjob.c | 1 +
> src/conf/virdomainjob.h | 1 +
> src/qemu/qemu_domain.h | 4 ++++
> src/qemu/qemu_driver.c | 1 +
> src/qemu/qemu_migration.c | 7 +++++++
> src/qemu/qemu_monitor.c | 1 +
> src/qemu/qemu_monitor.h | 1 +
> src/qemu/qemu_monitor_json.c | 1 +
> src/qemu/qemu_process.c | 4 ++++
> 9 files changed, 21 insertions(+)
...
> diff --git a/src/qemu/qemu_domain.h b/src/qemu/qemu_domain.h
> index a5092dd7f0..af0bb04c45 100644
> --- a/src/qemu/qemu_domain.h
> +++ b/src/qemu/qemu_domain.h
> @@ -199,6 +199,10 @@ struct _qemuDomainObjPrivate {
> * private XML. */
> virBitmap *migrationCaps;
>
> + /* True if QEMU supports "postcopy-recover-setup" migration state.
> Checked
> + * QEMU enters the state, not to be stored in private XML. */
> + bool migrationRecoverSetup;
> +
> /* true if qemu-pr-helper process is running for the domain */
> bool prDaemonRunning;
>
Oops, this new field also needs to be reset, consider the following hunk
squashed in:
diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
index 1e355f0f41..f87ba6ba51 100644
--- a/src/qemu/qemu_domain.c
+++ b/src/qemu/qemu_domain.c
@@ -1873,6 +1873,8 @@ qemuDomainObjPrivateDataClear(qemuDomainObjPrivate *priv)
virHashRemoveAll(priv->statsSchema);
g_slist_free_full(g_steal_pointer(&priv->threadContextAliases), g_free);
+
+ priv->migrationRecoverSetup = false;
}
Jirka