[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 1/1] xc_domain_restore: Allow QEMU to increase memory
On 04/13/15 12:20, Wei Liu wrote: > On Mon, Apr 13, 2015 at 12:09:13PM -0400, Don Slutz wrote: >> If QEMU has called on xc_domain_setmaxmem to add more memory for >> option ROMs, domain restore needs to also increase the memory. >> >> Signed-off-by: Don Slutz <dslutz@xxxxxxxxxxx> >> --- >> To see the hvmloader loader issue: >> ... >> >> +/* Leave some slack so that hvmloader does not complain about lack of >> + * memory at boot time ("Could not allocate order=0 extent"). >> + * Once hvmloader is modified to cope with that situation without >> + * printing warning messages, QEMU_SPARE_PAGES can be removed. > Yes, please properly modify hvmloader to do this instead of trying to > workaround this over and over again. At some point I might get to this. > But didn't Stefano make some changes to libxl too to handle the extra > ram needed? Not that I have seen. >> + */ >> +#define QEMU_SPARE_PAGES 16 >> + > This is still arbitrary and prone to breakage. Yes, but turns out not to be the important part. > >> struct restore_ctx { >> unsigned long max_mfn; /* max mfn of the current host machine */ >> unsigned long hvirt_start; /* virtual starting address of the >> hypervisor */ >> @@ -209,12 +216,44 @@ static int uncanonicalize_pagetable( >> if (!ctx->hvm && ctx->superpages) >> rc = alloc_superpage_mfns(xch, dom, ctx, nr_mfns); >> else >> + { ... >> + } > This is not maintainable. Trying to do smart things inside libxc > without libxl knowing it is prone to breakage. Some how I forgot to include that this is a bug in master (4.6-unstable). Much more info in my reply to Andrew Cooper (short form below). [root@dcs-xen-52 don]# xl cre -p /home/don/e1000x8.xfg Parsing config from /home/don/e1000x8.xfg got a tsc mode string: "native_paravirt" [root@dcs-xen-52 don]# xl save e1000x8 e1000x8.save Saving to e1000x8.save new xl format (info 0x1/0x0/3506) xc: Saving memory: iter 0 (last sent 0 skipped 0): 1044481/1044481 100% [root@dcs-xen-52 don]# xl restore e1000x8.save Loading new save file e1000x8.save (new xl fmt info 0x1/0x0/3506) Savefile contains xl domain config in JSON format Parsing config from <saved> xc: error: Failed to allocate memory for batch.!: Internal error libxl: error: libxl_create.c:1057:libxl__xc_domain_restore_done: restoring domain: Cannot allocate memory libxl: error: libxl_create.c:1129:domcreate_rebuild_done: cannot (re-)build domain: -3 libxl: error: libxl.c:1576:libxl__destroy_domid: non-existant domain 2 libxl: error: libxl.c:1540:domain_destroy_callback: unable to destroy guest with domid 2 libxl: error: libxl_create.c:1490:domcreate_destruction_cb: unable to destroy domain 2 following failed creation [root@dcs-xen-52 don]# -Don Slutz > Wei. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |