[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] x86/mm: Consolidate all Xen L4 slot writing into init_xen_l4_slots()
>>> On 01.09.17 at 19:07, <andrew.cooper3@xxxxxxxxxx> wrote: > Having all of this logic together makes it easier to follow Xen's virtual > setup across the whole system. > > No practical changes to the resulting L4, although the logic has been > rearanged to avoid rewriting some slots. This changes the zap_ro_mpt > parameter to simply ro_mpt. Another side effect is that highmem-start= is > applied consistently to all L4 tables, not just PV ones. Is this side effect really a good idea to have? I.e. are you certain HVM-only code (i.e. such known to only ever run in HVM or idle vCPU context) is all prepared to not have everything direct- mapped, and is using map_domain_page() et al everywhere? > +void init_xen_l4_slots(l4_pgentry_t *l4t, mfn_t l4mfn, > + const struct domain *d, mfn_t sl4mfn, bool ro_mpt) > +{ > + /* Slot 256: RO M2P (if applicable). */ > + l4t[l4_table_offset(RO_MPT_VIRT_START)] = > + ro_mpt ? idle_pg_table[l4_table_offset(RO_MPT_VIRT_START)] > + : l4e_empty(); While the patch in general looks correct, I'm also not convinced having the slot numbers here as well as doing the operation in an open-coded slot-by-slot fashion is a good idea: The comments and the intended ordering here can easily go stale with future adjustments to the virtual address layout. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |