[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] migration: Truncate state file in xen-save-devices-state
From: |
Stefano Stabellini |
Subject: |
Re: [PATCH] migration: Truncate state file in xen-save-devices-state |
Date: |
Mon, 21 Sep 2020 16:46:10 -0700 (PDT) |
User-agent: |
Alpine 2.21 (DEB 202 2017-01-01) |
Adding Paul
On Mon, 21 Sep 2020, Dr. David Alan Gilbert wrote:
> * Dov Murik (dovmurik@linux.vnet.ibm.com) wrote:
> >
> >
> > On 21/09/2020 14:17, Dr. David Alan Gilbert wrote:
> > > * Dov Murik (dovmurik@linux.vnet.ibm.com) wrote:
> > > > When running the xen-save-devices-state QMP command, if the filename
> > > > already exists it will be truncated before dumping the devices' state
> > > > into it.
> > > >
> > > > Signed-off-by: Dov Murik <dovmurik@linux.vnet.ibm.com>
> > > > ---
> > >
> > > OK, that looks fine to me, so:
> > >
> > > Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
> > >
> > > >
> > > > Note that I found the above issue while trying to debug
> > > > xen-load-devices-state which simply fails (prints "Configuration section
> > > > missing" to stderr) directly after xen-save-devices-state (in the same
> > > > VM). I wonder if I should file a bug report as-is or investigate some
> > > > more. Advice welcome.
> > >
> > > I don't try the xen-* commands normally; I've cc'ing in Stefano and
> > > Anthony.
> >
> > Thanks Dave. Just to be clear, I'm running this without Xen at all; but
> > these commands seem to work OK for dumping/restoring guest's devices
> > state (without RAM) -- if I modify the code to circumvent the mentioned
> > problem.
>
> Yeh, although you can't rely on them not doing something Xen in the
> future. There are a few other similar ways of doing what you want; eg.
> if your RAM is 'shared' then you can set the x-ignore-shared migration
> capability.
>
> Dave
>
> > Dov
> >
> > >
> > > Dave
> > >
> > > >
> > > > -Dov
> > > >
> > > > ---
> > > > migration/savevm.c | 3 ++-
> > > > 1 file changed, 2 insertions(+), 1 deletion(-)
> > > >
> > > > diff --git a/migration/savevm.c b/migration/savevm.c
> > > > index 304d98ff78..e1b26672cc 100644
> > > > --- a/migration/savevm.c
> > > > +++ b/migration/savevm.c
> > > > @@ -2803,7 +2803,8 @@ void qmp_xen_save_devices_state(const char
> > > > *filename, bool has_live, bool live,
> > > > vm_stop(RUN_STATE_SAVE_VM);
> > > > global_state_store_running();
> > > > - ioc = qio_channel_file_new_path(filename, O_WRONLY | O_CREAT,
> > > > 0660, errp);
> > > > + ioc = qio_channel_file_new_path(filename, O_WRONLY | O_CREAT |
> > > > O_TRUNC,
> > > > + 0660, errp);
> > > > if (!ioc) {
> > > > goto the_end;
> > > > }
> > > > --
> > > > 2.20.1
> > > >
> >
> --
> Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
>