qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] migration: Truncate state file in xen-save-devices-state


From: Dr. David Alan Gilbert
Subject: Re: [PATCH] migration: Truncate state file in xen-save-devices-state
Date: Mon, 21 Sep 2020 18:56:39 +0100
User-agent: Mutt/1.14.6 (2020-07-11)

* 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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]