[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 06/29] migration: Add auto-pause capability
From: |
Daniel P . Berrangé |
Subject: |
Re: [PATCH v2 06/29] migration: Add auto-pause capability |
Date: |
Wed, 25 Oct 2023 16:40:52 +0100 |
User-agent: |
Mutt/2.2.9 (2022-11-12) |
On Wed, Oct 25, 2023 at 11:36:27AM -0400, Peter Xu wrote:
> On Wed, Oct 25, 2023 at 04:25:23PM +0100, Daniel P. Berrangé wrote:
> > > Libvirt will still use fixed-ram for live snapshot purpose, especially for
> > > Windows? Then auto-pause may still be useful to identify that from what
> > > Fabiano wants to achieve here (which is in reality, non-live)?
> > >
> > > IIRC of previous discussion that was the major point that libvirt can
> > > still
> > > leverage fixed-ram for a live case - since Windows lacks efficient live
> > > snapshot (background-snapshot feature).
> >
> > Libvirt will use fixed-ram for all APIs it has that involve saving to
> > disk, with CPUs both running and paused.
>
> There are still two scenarios. How should we identify them, then? For
> sure we can always make it live, but QEMU needs that information to make it
> efficient for non-live.
>
> Considering when there's no auto-pause, then Libvirt will still need to
> know the scenario first then to decide whether pausing VM before migration
> or do nothing, am I right?
libvirt will issue a 'stop' before invoking 'migrate' if it
needs to. QEMU should be able to optimize that scenario if
it sees CPUs already stopped when migrate is started ?
> If so, can Libvirt replace that "pause VM" operation with setting
> auto-pause=on here? Again, the benefit is QEMU can benefit from it.
>
> I think when pausing Libvirt can still receive an event, then it can
> cooperate with state changes? Meanwhile auto-pause=on will be set by
> Libvirt too, so Libvirt will even have that expectation that QMP migrate
> later on will pause the VM.
>
> >
> > > From that POV it sounds like auto-pause is a good knob for that.
> >
> > From libvirt's POV auto-pause will create extra work for integration
> > for no gain.
>
> Yes, I agree for Libvirt there's no gain, as the gain is on QEMU's side.
> Could you elaborate what is the complexity for Libvirt to support it?
It increases the code paths because we will have to support
and test different behaviour wrt CPU state for fixed-ram
vs non-fixed ram usage.
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
- [PATCH v2 06/29] migration: Add auto-pause capability, (continued)
- [PATCH v2 06/29] migration: Add auto-pause capability, Fabiano Rosas, 2023/10/23
- Re: [PATCH v2 06/29] migration: Add auto-pause capability, Daniel P . Berrangé, 2023/10/25
- Re: [PATCH v2 06/29] migration: Add auto-pause capability, Fabiano Rosas, 2023/10/25
- Re: [PATCH v2 06/29] migration: Add auto-pause capability, Daniel P . Berrangé, 2023/10/25
- Re: [PATCH v2 06/29] migration: Add auto-pause capability, Peter Xu, 2023/10/25
- Re: [PATCH v2 06/29] migration: Add auto-pause capability, Daniel P . Berrangé, 2023/10/25
- Re: [PATCH v2 06/29] migration: Add auto-pause capability, Peter Xu, 2023/10/25
- Re: [PATCH v2 06/29] migration: Add auto-pause capability,
Daniel P . Berrangé <=
- Re: [PATCH v2 06/29] migration: Add auto-pause capability, Peter Xu, 2023/10/25
- Re: [PATCH v2 06/29] migration: Add auto-pause capability, Daniel P . Berrangé, 2023/10/25
- Re: [PATCH v2 06/29] migration: Add auto-pause capability, Peter Xu, 2023/10/25
[PATCH v2 07/29] migration: Run "file:" migration with a stopped VM, Fabiano Rosas, 2023/10/23
[PATCH v2 08/29] tests/qtest: File migration auto-pause tests, Fabiano Rosas, 2023/10/23
[PATCH v2 09/29] io: add and implement QIO_CHANNEL_FEATURE_SEEKABLE for channel file, Fabiano Rosas, 2023/10/23
[PATCH v2 10/29] io: Add generic pwritev/preadv interface, Fabiano Rosas, 2023/10/23
[PATCH v2 11/29] io: implement io_pwritev/preadv for QIOChannelFile, Fabiano Rosas, 2023/10/23