qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v2] migration: skip sending ram pages released b


From: Michael S. Tsirkin
Subject: Re: [Qemu-devel] [PATCH v2] migration: skip sending ram pages released by virtio-balloon driver.
Date: Wed, 13 Apr 2016 14:36:28 +0300

On Wed, Apr 13, 2016 at 12:15:38PM +0100, Dr. David Alan Gilbert wrote:
> * Michael S. Tsirkin (address@hidden) wrote:
> > On Wed, Apr 13, 2016 at 04:24:55PM +0530, Jitendra Kolhe wrote:
> > > Can we extend support for post-copy in a different patch set?
> > 
> > If the optimization does not *help* on some paths,
> > that's fine. The issue is with adding extra code
> > special-casing protocols:
> > 
> > +    if (migrate_postcopy_ram()) {
> > +        balloon_bitmap_disable_state = BALLOON_BITMAP_DISABLE_PERMANENT;
> > +    }
> > 
> > Generally when one sees that patchset breaks XYZ...
> > the easy solution is "check for XYZ
> > and disable the optimization". But do this enough times
> > and the codebase becomes impossible to reason about.
> >     why did migration become slower? oh it enabled
> >     optimization A and that conflicts with optimization B ...
> 
> Hang on; this is getting all very complicated; I wouldn't start tieing
> this thing up with postcopy yet.  Lets try and keep this simple for starters.
> 
> Dave

Absolutely, but I don't understand why is this implemented in such
a complex way.
1. keep track of pages in balloon in a bitmap
2. put bitmap in a ram block
3. check that before sending page. if there - it's a zero page

All the complexity is to avoid migrating an extra bit per page
and it seems like a premature optimization to me at this stage.

> > 
> > 
> > > and use 
> > > current patch set to support other remaining protocols?
> > 
> > Even disregarding postcopy, I think there were
> > comments that need to be addressed.
> > 
> > -- 
> > MST
> --
> Dr. David Alan Gilbert / address@hidden / Manchester, UK



reply via email to

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