[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v3 2/6] xen: arm: Handle 4K aligned hypervisor load address.
On Mon, 2014-07-21 at 15:38 +0200, Tim Deegan wrote: > At 14:29 +0100 on 21 Jul (1405949358), Ian Campbell wrote: > > On Mon, 2014-07-21 at 15:20 +0200, Tim Deegan wrote: > > > At 13:59 +0100 on 21 Jul (1405947596), Ian Campbell wrote: > > > > +virtphys_clash: > > > > + /* Identity map clashes with boot_third, which we cannot > > > > handle yet */ > > > > + PRINT("Unable to build boot page tables - virt and phys > > > > addresses clash.\r\n") > > > > > > Please tag this string "- Like so -\r\n" to match the other early output > > > from the boot assembler. > > > > OK. (I may do it on commit unless other comments necessitate a resend) > > Sure. > > > > Presumably we could get around this by making a 4k mapping when the 2M > > > mapping would clash (at the cost of some extra code)? > > > > It might be workable. > > > > We'd have to steal the slot from boot_third to point to 4K worth of 1:1 > > mapping instead of the expected 4K of virtual mapping and then put back > > the virt mapping right after switching to the virtually mapped PC before > > we touch anything mapped via that slot i.e. before touching anything > > after _end_boot. Doing it at the same time as we establish the fixmap > > and dtb mappings would do the trick, I think. > > > > I'd previously concluded this wasn't possible, but don't recall why. > > What am I missing this time? > > We'd be in trouble if we used the slot that covers the boot_third > table itself. We could work around that, e.g. by using a linear PT to > update the mapping, but it's getting a bit intricate. That's not the issue I foresaw, but it is an issue. A linear PT would be a problem if the virt address we picked clashed with the load address. We might be able to get away with mapping boot_third twice, one at it's normal virt address and again at some address just after _end, then using whichever one doesn't clash with the 1:1. > At that point > I'd be inclined to look at ways to get up into C while still PIC and > doing the pagetable build & trampoline from there. Having played with this for grub purposes I don't really trust -fPIC very much on ARM. Although that was trying to be doubly clever so maybe it's OK for more traditional uses. Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |