[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v2 5/5] xen/memory, tools: Make init-dom0less consume XEN_DOMCTL_get_mem_map
On Fri, Mar 08, 2024 at 09:54:35AM +0800, Henry Wang wrote: > diff --git a/tools/helpers/init-dom0less.c b/tools/helpers/init-dom0less.c > index fee93459c4..92c612f6da 100644 > --- a/tools/helpers/init-dom0less.c > +++ b/tools/helpers/init-dom0less.c > @@ -23,16 +23,30 @@ static int alloc_xs_page(struct xc_interface_core *xch, > libxl_dominfo *info, > uint64_t *xenstore_pfn) > { > - int rc; > - const xen_pfn_t base = GUEST_MAGIC_BASE >> XC_PAGE_SHIFT; > - xen_pfn_t p2m = (GUEST_MAGIC_BASE >> XC_PAGE_SHIFT) + > XENSTORE_PFN_OFFSET; > + int rc, i; > + xen_pfn_t base = ((xen_pfn_t)-1); > + xen_pfn_t p2m = ((xen_pfn_t)-1); > + uint32_t nr_regions = XEN_MAX_MEM_REGIONS; > + struct xen_mem_region mem_regions[XEN_MAX_MEM_REGIONS] = {0}; > + > + rc = xc_get_domain_mem_map(xch, info->domid, mem_regions, &nr_regions); Shouldn't you check the value of in `rc`? > + for ( i = 0; i < nr_regions; i++ ) > + { > + if ( mem_regions[i].type == GUEST_MEM_REGION_MAGIC ) > + { > + base = mem_regions[i].start >> XC_PAGE_SHIFT; > + p2m = (mem_regions[i].start >> XC_PAGE_SHIFT) + > XENSTORE_PFN_OFFSET; > + } > + } Thanks, -- Anthony PERARD
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |