Li, Xin B
2005-Sep-15 07:14 UTC
[Xen-devel] [PATCH][VT] make VMX guest 1:1 page table PGD page below 4G
Like IA32 PAE xenlinux, we also need make VMX guest 1:1 page table PGD
page below 4G.
Signed-off-by: Xin Li <xin.b.li@intel.com>
Signed-off-by: Chengyuan Li <chengyuan.li@intel.com>
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
diff -r bd477fcd32ab tools/libxc/xc_vmx_build.c
--- a/tools/libxc/xc_vmx_build.c Thu Sep 15 04:12:54 2005
+++ b/tools/libxc/xc_vmx_build.c Thu Sep 15 15:04:09 2005
@@ -376,9 +376,21 @@
if ( (mmu = xc_init_mmu_updates(xc_handle, dom)) == NULL )
goto error_out;
+ /* First allocate page for page dir or pdpt */
+ ppt_alloc = (vpt_start - dsi.v_start) >> PAGE_SHIFT;
+ if ( page_array[ppt_alloc] > 0xfffff )
+ {
+ unsigned long nmfn;
+ nmfn = xc_make_page_below_4G( xc_handle, dom,
page_array[ppt_alloc] );
+ if ( nmfn == 0 )
+ {
+ fprintf(stderr, "Couldn''t get a page below 4GB
:-(\n");
+ goto error_out;
+ }
+ page_array[ppt_alloc] = nmfn;
+ }
+
#ifdef __i386__
- /* First allocate page for page dir. */
- ppt_alloc = (vpt_start - dsi.v_start) >> PAGE_SHIFT;
l2tab = page_array[ppt_alloc++] << PAGE_SHIFT;
ctxt->ctrlreg[3] = l2tab;
@@ -414,8 +426,6 @@
munmap(vl1tab, PAGE_SIZE);
munmap(vl2tab, PAGE_SIZE);
#else
- /* First allocate pdpt */
- ppt_alloc = (vpt_start - dsi.v_start) >> PAGE_SHIFT;
/* here l3tab means pdpt, only 4 entry is used */
l3tab = page_array[ppt_alloc++] << PAGE_SHIFT;
ctxt->ctrlreg[3] = l3tab;
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
Keir Fraser
2005-Sep-15 09:08 UTC
Re: [Xen-devel] [PATCH][VT] make VMX guest 1:1 page table PGD page below 4G
On 15 Sep 2005, at 08:14, Li, Xin B wrote:> Like IA32 PAE xenlinux, we also need make VMX guest 1:1 page table PGD > page below 4G. > > Signed-off-by: Xin Li <xin.b.li@intel.com> > Signed-off-by: Chengyuan Li <chengyuan.li@intel.com> > Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com> > Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>The patch is malformed (the mail client inserted line breaks). Please resubmit. -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel