On 26.12.2024 17:57, Daniel P. Smith wrote: > --- a/xen/arch/x86/dom0_build.c > +++ b/xen/arch/x86/dom0_build.c > @@ -609,6 +609,14 @@ int __init construct_dom0(struct boot_domain *bd) > > process_pending_softirqs(); > > + /* If param dom0_size was not set and HL config provided memory size */ > + if ( !get_memsize(&dom0_size, LONG_MAX) && bd->mem_pages ) > + dom0_size.nr_pages = bd->mem_pages; > + if ( !get_memsize(&dom0_min_size, LONG_MAX) && bd->min_pages ) > + dom0_size.nr_pages = bd->min_pages; > + if ( !get_memsize(&dom0_max_size, LONG_MAX) && bd->max_pages ) > + dom0_size.nr_pages = bd->max_pages;
Again I don't think it should be mix-and-match: Either everything is taken from DT, or everything is taken from the command line. Yet I'm open to be convinced otherwise. > --- a/xen/include/xen/libfdt/libfdt-xen.h > +++ b/xen/include/xen/libfdt/libfdt-xen.h > @@ -37,6 +37,15 @@ static inline int __init fdt_prop_as_u32( > return fdt_cell_as_u32((fdt32_t *)prop->data, val); > } > > +static inline int __init fdt_prop_as_u64( > + const struct fdt_property *prop, uint64_t *val) > +{ > + if ( !prop || fdt32_to_cpu(prop->len) < sizeof(u64) ) No new uses of u64 (and alike) please. Jan