[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v4 7/9] tools: arm: prepare guest FDT building for multiple RAM banks
On Tue, 2014-05-13 at 13:35 +0100, Julien Grall wrote: > Hi Ian, > > On 05/13/2014 12:29 PM, Ian Campbell wrote: > > This required exposing the sizes of the banks determined by the domain > > builder > > up to libxl via xc_dom_image. > > > > Since the domain build needs to know the size of the DTB we create > > placeholder > > nodes for each possible bank and when we finialise the DTB we fill in the > > ones > > finalise > > > which are actually populated and NOP out the rest. > > It's annoying that we can't dissociate bank setup (i.e defining the size > of each banks) and placing modules (kernel, DTB,...). > > It would avoid to have 2 step to create memory node. We have to have 2 steps for the initrd case (that's unavoidable), given that having something similar for the memory is not the end of the world. > Anyway, I'm fine with this solution for now. > > [..] > > > int libxl__arch_domain_finalise_hw_description(libxl__gc *gc, > > libxl_domain_build_info > > *info, > > struct xc_dom_image *dom) > > { > > void *fdt = dom->devicetree_blob; > > + int i; > > + const uint64_t bankbase[GUEST_RAM_BANKS] = { > > + GUEST_RAM0_BASE > > + }; > > You've duplicate this variable in multiple place (twice in libxl and > once in libxc). > > I think it's better if we can avoid duplicating this variable, maybe by > storing in xc_dom_image? I'll take a look. Since these are currently constants I might just #define GUEST_RAM_BASES { GUEST_RAM0_BASE , GUEST_RAM1_BASE } So that these become const uunt64_t bankbase[] = GUEST_RAM_BASES; > > > > > const struct xc_dom_seg *ramdisk = dom->ramdisk_blob ? > > &dom->ramdisk_seg : NULL; > > @@ -552,9 +588,16 @@ int > > libxl__arch_domain_finalise_hw_description(libxl__gc *gc, > > assert(!res); > > > > val = cpu_to_fdt64(ramdisk->vend); > > - res = fdt_setprop_inplace(fdt, chosen,PROP_INITRD_END, > > + res = fdt_setprop_inplace(fdt, chosen, PROP_INITRD_END, > > &val, sizeof(val)); > > Spurious change? It was deliberate, I just spotted the coding style error while I was in the region. Naughty to slip it in here I know. I'll mention it in the commit log. Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |