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

Re: [Xen-devel] Xen balloon driver improvement (version 1)



On 23/10/14 11:52, Stefano Stabellini wrote:
> On Thu, 23 Oct 2014, David Vrabel wrote:
>> On 22/10/14 17:29, Wei Liu wrote:
>>>
>>> ### Make use of balloon page compaction
>> [...]
>>> The core of migration callback is XENMEM\_exchange hypercall. This
>>> makes sure that inflation of old page and deflation of new page is
>>> done atomically, so even if a domain is beyond its memory target and
>>> being enforced, it can still compact memory.
>>
>> XENMEM_exchange doesn't really have the behaviour that is needed here.
>>
>> Page migration splits the memory map into two parts, the populated area
>> at the bottom and the balloon area.  The populated area is fragmented by
>> ballooned pages, and the balloon area is fragmented by populated pages.
>>
>> Consider a single ballooned page in the middle of an otherwise intact
>> superframe.  Page migration wants to populate this page and depopulate a
>> different page from the balloon area.
>>
>> A hypercall that can do an atomic populate and depopulate will allow xen
>> to easily recreate the superframe (if the missing frame is free).
>> XENMEM_exchange will leave the superframe fragmented.
>  
> XENMEM_exchange should be capable of doing that. If it is not today, it
> could be fixed. Am I missing something? What the problem at the
> interface level with XENMEM_exchange?

I'm probably not understanding what XENMEM_exchange does.  If it has the
correct behaviour already then that's fine.

David

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.