Mailing List Archive

RE: [PATCH] Fix auto-ballooning of dom0 for HVMdomains
>-----Original Message-----
>From: Charles Coffing [mailto:ccoffing@novell.com]
>Sent: Saturday, May 20, 2006 3:59 AM
>To: Jiang, Yunhong; xen-devel@lists.xensource.com
>Subject: RE: [Xen-devel] [PATCH] Fix auto-ballooning of dom0
>for HVMdomains
>
>> On Thu, May 18, 2006 at 10:23 PM, in message
><A8F9FF3706D1A5479EF62192B976DB441C0594@pdsmsx401.ccr.corp.intel.com>,
>"Jiang, Yunhong" <yunhong.jiang@intel.com> wrote:
>> Hi, Charles
>> Just one suggestion, for xen- hvm- auto- balloon.diff, how
>about
>> change
>> xc.domain_setmaxmem(self.domid, m)
>>
>> to
>> xc.domain_setmaxmem(self.domid, self.info['memory'] *
>1024)
>
>Ideally, yes, I would agree. But later, in qemu, another
>increase_reservation() is called. If I make the suggested change, I
>suspect that qemu will fail to get its memory.
>
>Or is this upper limit not checked when increase_reservation() is
>called from dom0?

I think when call increase_reservation() on qemu, it called
xc_domain_setmaxmem() firstly.
See followed code on vl.c:

nr_pages = info.nr_pages + extra_pages;

if ( xc_domain_setmaxmem(xc_handle, domid, ---------> setmaxmem here
(nr_pages) * PAGE_SIZE/1024 ) != 0)
{
fprintf(logfile, "set maxmem returned error %d\n", errno);
exit(-1);
}

if ( (page_array = (unsigned long *)
malloc(nr_pages * sizeof(unsigned long))) ==
NULL)
{
fprintf(logfile, "malloc returned error %d\n", errno);
exit(-1);
}

if (xc_domain_memory_increase_reservation(xc_handle, domid,
extra_pages , 0, 0, NULL)
!= 0)
{
fprintf(logfile, "increase reservation returned error %d\n",
errno);
exit(-1);
}

>

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel