[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v7 22/23] migration/qmp: add command migrate-pau
From: |
Peter Xu |
Subject: |
Re: [Qemu-devel] [PATCH v7 22/23] migration/qmp: add command migrate-pause |
Date: |
Tue, 13 Mar 2018 16:54:04 +0800 |
User-agent: |
Mutt/1.9.1 (2017-09-22) |
On Mon, Mar 12, 2018 at 05:36:09PM +0000, Dr. David Alan Gilbert wrote:
> * Peter Xu (address@hidden) wrote:
> > It pauses an ongoing migration. Currently it only supports postcopy.
> > Note that this command will work on either side of the migration.
> > Basically when we trigger this on one side, it'll interrupt the other
> > side as well since the other side will get notified on the disconnect
> > event.
> >
> > However, it's still possible that the other side is not notified, for
> > example, when the network is totally broken, or due to some firewall
> > configuration changes. In that case, we will also need to run the same
> > command on the other side so both sides will go into the paused state.
> >
> > Signed-off-by: Peter Xu <address@hidden>
> > ---
> > migration/migration.c | 27 +++++++++++++++++++++++++++
> > qapi/migration.json | 16 ++++++++++++++++
> > 2 files changed, 43 insertions(+)
> >
> > diff --git a/migration/migration.c b/migration/migration.c
> > index 180552329c..f31fcbb0d5 100644
> > --- a/migration/migration.c
> > +++ b/migration/migration.c
> > @@ -1448,6 +1448,33 @@ void qmp_migrate_recover(const char *uri, Error
> > **errp)
> > qemu_start_incoming_migration(uri, errp);
> > }
> >
> > +void qmp_migrate_pause(Error **errp)
> > +{
> > + MigrationState *ms = migrate_get_current();
> > + MigrationIncomingState *mis = migration_incoming_get_current();
> > + int ret;
> > +
> > + if (ms->state == MIGRATION_STATUS_POSTCOPY_ACTIVE) {
> > + /* Source side, during postcopy */
> > + ret = qemu_file_shutdown(ms->to_dst_file);
>
> How did this fix the race I mentioned last time?
Ah sorry I missed that one. I'll reply there.
--
Peter Xu
- Re: [Qemu-devel] [PATCH v7 17/23] migration: setup ramstate for resume, (continued)
- [Qemu-devel] [PATCH v7 18/23] migration: final handshake for the resume, Peter Xu, 2018/03/09
- [Qemu-devel] [PATCH v7 19/23] migration: init dst in migration_object_init too, Peter Xu, 2018/03/09
- [Qemu-devel] [PATCH v7 21/23] hmp/migration: add migrate_recover command, Peter Xu, 2018/03/09
- [Qemu-devel] [PATCH v7 20/23] qmp/migration: new command migrate-recover, Peter Xu, 2018/03/09
- [Qemu-devel] [PATCH v7 22/23] migration/qmp: add command migrate-pause, Peter Xu, 2018/03/09
- [Qemu-devel] [PATCH v7 23/23] migration/hmp: add migrate_pause command, Peter Xu, 2018/03/09
- Re: [Qemu-devel] [PATCH v7 00/23] Migration: postcopy failure recovery, no-reply, 2018/03/09
- Re: [Qemu-devel] [PATCH v7 00/23] Migration: postcopy failure recovery, no-reply, 2018/03/09
- Re: [Qemu-devel] [PATCH v7 00/23] Migration: postcopy failure recovery, no-reply, 2018/03/09
- Re: [Qemu-devel] [PATCH v7 00/23] Migration: postcopy failure recovery, no-reply, 2018/03/09
- Re: [Qemu-devel] [PATCH v7 00/23] Migration: postcopy failure recovery, Eric Blake, 2018/03/09