svn commit: r245165 - projects/amd64_xen_pv/sys/amd64/amd64
Cherry G. Mathew
cherry at FreeBSD.org
Tue Jan 8 15:22:03 UTC 2013
Author: cherry
Date: Tue Jan 8 15:22:03 2013
New Revision: 245165
URL: http://svnweb.freebsd.org/changeset/base/245165
Log:
pcb->pcb_cr3 should contain the PA of the pml4 table
Modified:
projects/amd64_xen_pv/sys/amd64/amd64/vm_machdep.c
Modified: projects/amd64_xen_pv/sys/amd64/amd64/vm_machdep.c
==============================================================================
--- projects/amd64_xen_pv/sys/amd64/amd64/vm_machdep.c Tue Jan 8 12:21:50 2013 (r245164)
+++ projects/amd64_xen_pv/sys/amd64/amd64/vm_machdep.c Tue Jan 8 15:22:03 2013 (r245165)
@@ -219,7 +219,12 @@ cpu_fork(td1, p2, td2, flags)
* return address on stack. These are the kernel mode register values.
*/
pmap2 = vmspace_pmap(p2->p_vmspace);
+#ifdef XEN
+ pcb2->pcb_cr3 = pmap_kextract((vm_offset_t)pmap2->pm_pml4);
+#else
pcb2->pcb_cr3 = DMAP_TO_PHYS((vm_offset_t)pmap2->pm_pml4);
+#endif
+
pcb2->pcb_r12 = (register_t)fork_return; /* fork_trampoline argument */
pcb2->pcb_rbp = 0;
pcb2->pcb_rsp = (register_t)td2->td_frame - sizeof(void *);
More information about the svn-src-projects
mailing list