[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Claim mode and HVM PoD interact badly
>>> On 10.01.14 at 17:07, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> wrote: > On Fri, Jan 10, 2014 at 03:52:08PM +0000, Jan Beulich wrote: >> >>> On 10.01.14 at 16:41, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> >> >>> wrote: >> > On Fri, Jan 10, 2014 at 03:10:48PM +0000, Wei Liu wrote: >> >> On Fri, Jan 10, 2014 at 09:58:07AM -0500, Konrad Rzeszutek Wilk wrote: >> >> > --- a/tools/libxc/xc_hvm_build_x86.c >> >> > +++ b/tools/libxc/xc_hvm_build_x86.c >> >> > @@ -335,7 +335,12 @@ static int setup_guest(xc_interface *xch, >> >> > >> >> > /* try to claim pages for early warning of insufficient memory > available */ >> >> > if ( claim_enabled ) { >> >> > - rc = xc_domain_claim_pages(xch, dom, nr_pages - cur_pages); >> >> > + unsigned long nr = nr_pages - cur_pages; >> >> > + >> >> > + if ( pod_mode ) >> >> > + nr = target_pages - 0x20; >> >> > + >> >> >> >> Yes it should work because this makes nr smaller than d->tot_pages and >> >> d->max_pages. But according to the comment you pasted above this looks >> >> like wrong fix... >> > >> > It should be: >> > >> > tot_pages = 128MB >> > max_pages = 256MB >> > nr = 256MB - 0x20. >> > >> > So tot_pages < max_pages > nr && nr > tot_pages >> > >> > If I got my variables right. >> > Which means that 'nr' is greater than tot_pages but less than max_pages. >> >> But that seems conceptually wrong: As was said before, the guest >> should only get 128Mb allocated, hence it would be wrong to claim >> almost 256Mb for it. > > At the start of the day (that is when the guest starts) it would only have > 128MB allocated to it. But before then it needs 256MB (at least that is > based on looking at the code). > > I do agree it is seems odd that the cache allocates memory, then > frees it. But I might also be reading the code wrong. I'm afraid you do - Xen would refuse to allocate more than the current memory target to a domain, i.e. in the example here more than 128Mb. All of the rest of the guest memory must be fake (zeroed) pages. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |