Leendert van Doorn
2005-Apr-02 06:20 UTC
[Xen-devel] [PATCH] tools/libxc/xc_vmx_build.c broken
xc_vmx_build pins the level 2 page table too early so that subsequent maps (like those in zap_mmio_ranges) fail and consequently xc_vmx_build fails. To solve this, this patch pins the l2pt at the end of the function when all memory initializations are finalized. Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com> --- tools/libxc/xc_vmx_build.c.orig 2005-04-02 01:08:28.000000000 -0500 +++ tools/libxc/xc_vmx_build.c 2005-04-02 01:09:45.000000000 -0500 @@ -329,13 +329,6 @@ munmap(vl1tab, PAGE_SIZE); munmap(vl2tab, PAGE_SIZE); - /* - * Pin down l2tab addr as page dir page - causes hypervisor to provide - * correct protection for the page - */ - if ( pin_table(xc_handle, MMUEXT_PIN_L2_TABLE, l2tab>>PAGE_SHIFT, dom) ) - goto error_out; - if ((boot_paramsp = xc_map_foreign_range( xc_handle, dom, PAGE_SIZE, PROT_READ|PROT_WRITE, page_array[(vboot_params_start-dsi.v_start)>>PAGE_SHIFT])) == 0) @@ -428,6 +421,13 @@ shared_info->vcpu_data[i].evtchn_upcall_mask = 1; munmap(shared_info, PAGE_SIZE); + /* + * Pin down l2tab addr as page dir page - causes hypervisor to provide + * correct protection for the page + */ + if ( pin_table(xc_handle, MMUEXT_PIN_L2_TABLE, l2tab>>PAGE_SHIFT, dom) ) + goto error_out; + /* Send the page update requests down to the hypervisor. */ if ( finish_mmu_updates(xc_handle, mmu) ) goto error_out; _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Leendert van Doorn wrote:> xc_vmx_build pins the level 2 page table too early so that subsequentmaps (like those in zap_mmio_ranges) fail and consequently xc_vmx_build fails.> To solve this, this patch pins the l2pt at the end of the functionwhen all memory initializations are finalized. Actually, I don''t think it''s necessary to pin the level 2 page table for VMX guest. And if we don''t do that, we also need modify a few code in xen hypervisor. The patch will be sent out soon. -Xin Opinions are my own and don''t represent those of my employer _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel