LWN.net Logo

Re: [PATCH] VMware Balloon driver

From:  Andrew Morton <akpm-AT-linux-foundation.org>
To:  Jeremy Fitzhardinge <jeremy-AT-goop.org>
Subject:  Re: [PATCH] VMware Balloon driver
Date:  Mon, 5 Apr 2010 15:17:20 -0700
Cc:  Dmitry Torokhov <dtor-AT-vmware.com>, linux-kernel-AT-vger.kernel.org, pv-drivers-AT-vmware.com, Avi Kivity <avi-AT-redhat.com>, Dan Magenheimer <dan.magenheimer-AT-oracle.com>
Archive-link:  Article, Thread

On Mon, 05 Apr 2010 15:03:08 -0700
Jeremy Fitzhardinge <jeremy@goop.org> wrote:

> On 04/05/2010 02:24 PM, Andrew Morton wrote:
> > I think I've forgotten what balloon drivers do.  Are they as nasty a
> > hack as I remember believing them to be?
> >    
> 
> (I haven't looked at Dmitry's patch yet, so this is from the Xen 
> perspective.)
> 
> In the simplest form, they just look like a driver which allocates a 
> pile of pages, and the underlying memory gets returned to the 
> hypervisor.  When you want the memory back, it reattaches memory to the 
> pageframes and releases the memory back to the kernel.  This allows a 
> virtual machine to shrink with respect to its original size.
> 
> Going the other way - expanding beyond the memory allocation - is a bit 
> trickier because you need to get some new page structures from 
> somewhere.   We don't do this in Xen yet, but I've done some experiments 
> with hotplug memory to implement this.  Or a simpler approach is to fake 
> up some reserved E820 ranges to grow into.
> 

Lots of stuff for Dmitry to add to his changelog ;)

> > A summary of what this code sets out to do, and how it does it would be
> > useful.
> >
> > Also please explain the applicability of this driver.  Will xen use it?
> > kvm?  Out-of-tree code?
> >    
> The basic idea of the driver is to allow a guest system to give up 
> memory it isn't using so it can be reused by other virtual machines (or 
> the host itself).

So...  does this differ in any fundamental way from what hibernation
does, via shrink_all_memory()?



(Log in to post comments)

Copyright © 2010, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds