qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] migrate: Migration aborts abruptly for machine


From: Daniel P. Berrange
Subject: Re: [Qemu-devel] [PATCH] migrate: Migration aborts abruptly for machine "none"
Date: Fri, 27 Jan 2017 09:57:02 +0000
User-agent: Mutt/1.7.1 (2016-10-04)

On Fri, Jan 27, 2017 at 09:46:13AM +0000, Dr. David Alan Gilbert wrote:
> * Daniel P. Berrange (address@hidden) wrote:
> > On Thu, Jan 26, 2017 at 02:46:52PM +0530, Ashijeet Acharya wrote:
> > > Migration of a "none" machine with no RAM crashes abruptly as
> > > bitmap_new() fails and thus aborts. Instead, place a check for
> > > last_ram_offset() being '0' at the start of ram_save_setup() and
> > > error out with a meaningful error message.
> > > 
> > > Signed-off-by: Ashijeet Acharya <address@hidden>
> > > ---
> > >  migration/ram.c | 5 +++++
> > >  1 file changed, 5 insertions(+)
> > > 
> > > diff --git a/migration/ram.c b/migration/ram.c
> > > index ef8fadf..bf05d69 100644
> > > --- a/migration/ram.c
> > > +++ b/migration/ram.c
> > > @@ -1947,6 +1947,11 @@ static int ram_save_setup(QEMUFile *f, void 
> > > *opaque)
> > >  {
> > >      RAMBlock *block;
> > >  
> > > +    if (last_ram_offset() == 0) {
> > > +        error_report("Failed to migrate: No RAM available!");
> > > +        return -1;
> > > +    }
> > > +
> > 
> > If we're merely going to block migration, as opposed to making it work,
> > then IMHO we should use migration blockers registered at machine setup
> > for this task.
> > 
> > We have a new cli arg added to QEMU to tell it to abort startup if the
> > machine configuration is not migratable. That only works if using
> > migration blockers - this check you've added is too late to be detected
> > at startup.
> 
> Hmm, yes you're right, that would be better.
> Although it does lead to an interesting situation where starting with a 'none'
> and constructing it component at a time would get rejected by 
> --only-migratable
> even though the final construction is fine.

Even in that case I would expect the ram to be specified upfront e.g.

 $qemu -machine none -m 500

thus avoiding addition of the migration blocker

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://entangle-photo.org       -o-    http://search.cpan.org/~danberr/ :|



reply via email to

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