pfn = dom->pfn_alloc_end - dom->rambase_pfn;
if ( xc_dom_chk_alloc_pages(dom, name, 1) )
- return (xen_pfn_t)-1;
+ return INVALID_PFN;
DOMPRINTF("%-20s: %-12s : 0x%" PRIx64 " (pfn 0x%" PRIpfn ")",
__FUNCTION__, name, start, pfn);
if ( dom->arch_hooks->alloc_pgtables(dom) != 0 )
goto err;
if ( dom->alloc_bootstack )
+ {
dom->bootstack_pfn = xc_dom_alloc_page(dom, "boot stack");
+ if ( dom->bootstack_pfn == INVALID_PFN )
+ goto err;
+ }
+
DOMPRINTF("%-20s: virt_alloc_end : 0x%" PRIx64 "",
__FUNCTION__, dom->virt_alloc_end);
DOMPRINTF("%-20s: virt_pgtab_end : 0x%" PRIx64 "",
{
/* allocate special pages */
dom->start_info_pfn = xc_dom_alloc_page(dom, "start info");
+ if ( dom->start_info_pfn == INVALID_PFN )
+ return -1;
dom->xenstore_pfn = xc_dom_alloc_page(dom, "xenstore");
+ if ( dom->xenstore_pfn == INVALID_PFN )
+ return -1;
dom->console_pfn = xc_dom_alloc_page(dom, "console");
+ if ( dom->console_pfn == INVALID_PFN )
+ return -1;
if ( xc_dom_feature_translated(dom) )
+ {
dom->shared_info_pfn = xc_dom_alloc_page(dom, "shared info");
+ if ( dom->shared_info_pfn == INVALID_PFN )
+ return -1;
+ }
dom->alloc_bootstack = 1;
return 0;