Messages in this thread | | | Subject | Re: [PATCH 05/10] xen/pvh: Extend vcpu_guest_context, p2m, event, and XenBus. | From | Ian Campbell <> | Date | Wed, 24 Oct 2012 10:49:00 +0100 |
| |
On Tue, 2012-10-23 at 19:12 +0100, Konrad Rzeszutek Wilk wrote: [...] > + /* GUEST_GDTR_BASE and */ > + ctxt->u.pvh.gdtaddr = (unsigned long)gdt; > + /* GUEST_GDTR_LIMIT in the VMCS. */ > + ctxt->u.pvh.gdtsz = (unsigned long)(GDT_SIZE - 1); > + > [...] > - ctxt->gdt_frames[0] = gdt_mfn; > - ctxt->gdt_ents = GDT_ENTRIES; > + ctxt->u.pv.gdt_frames[0] = gdt_mfn; > + ctxt->u.pv.gdt_ents = GDT_ENTRIES;
I guess I've been told and forgotten but why does this need to differ between PV and PVH? Can the hypervisor not take the gfn in gdt_frames[0] = gdt_mfn and figure out the gdtaddr from it? Is this because n the PV case the H/V loads the GDT with the address of its own mapping of the gdt_frames but in the PVH case we have no such mapping because the pagetables don't have a Xen region in them?
It's worthy of a comment in any case.
[...] > + /* PVH TBD/FIXME: future work */ [...] > + /* PVH: TBD/FIXME: debug and fix eio map to work with pvh */
Do we really need these TODOs inline in the code? Especially in generic code.
Ian.
| |