Module Name:    src
Committed By:   jym
Date:           Thu Jul 15 23:20:34 UTC 2010

Modified Files:
        src/sys/arch/i386/i386: machdep.c
        src/sys/arch/xen/x86: x86_xpmap.c

Log Message:
With Xen, PDPpaddr should contain a guest physical address (== PFN).


To generate a diff of this commit:
cvs rdiff -u -r1.689 -r1.690 src/sys/arch/i386/i386/machdep.c
cvs rdiff -u -r1.19 -r1.20 src/sys/arch/xen/x86/x86_xpmap.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/i386/i386/machdep.c
diff -u src/sys/arch/i386/i386/machdep.c:1.689 src/sys/arch/i386/i386/machdep.c:1.690
--- src/sys/arch/i386/i386/machdep.c:1.689	Thu Jul 15 22:19:19 2010
+++ src/sys/arch/i386/i386/machdep.c	Thu Jul 15 23:20:34 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: machdep.c,v 1.689 2010/07/15 22:19:19 jym Exp $	*/
+/*	$NetBSD: machdep.c,v 1.690 2010/07/15 23:20:34 jym Exp $	*/
 
 /*-
  * Copyright (c) 1996, 1997, 1998, 2000, 2004, 2006, 2008, 2009
@@ -67,7 +67,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.689 2010/07/15 22:19:19 jym Exp $");
+__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.690 2010/07/15 23:20:34 jym Exp $");
 
 #include "opt_beep.h"
 #include "opt_compat_ibcs2.h"
@@ -1303,9 +1303,9 @@
 	cpu_init_msrs(&cpu_info_primary, true);
 
 #ifdef XEN
-	pcb->pcb_cr3 = PDPpaddr - KERNBASE;
+	pcb->pcb_cr3 = PDPpaddr;
 	__PRINTK(("pcb_cr3 0x%lx cr3 0x%lx\n",
-	    PDPpaddr - KERNBASE, xpmap_ptom(PDPpaddr - KERNBASE)));
+	    PDPpaddr, xpmap_ptom(PDPpaddr)));
 	XENPRINTK(("lwp0uarea %p first_avail %p\n",
 	    lwp0uarea, (void *)(long)first_avail));
 	XENPRINTK(("ptdpaddr %p atdevbase %p\n", (void *)PDPpaddr,

Index: src/sys/arch/xen/x86/x86_xpmap.c
diff -u src/sys/arch/xen/x86/x86_xpmap.c:1.19 src/sys/arch/xen/x86/x86_xpmap.c:1.20
--- src/sys/arch/xen/x86/x86_xpmap.c:1.19	Fri Feb 26 19:25:07 2010
+++ src/sys/arch/xen/x86/x86_xpmap.c	Thu Jul 15 23:20:34 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: x86_xpmap.c,v 1.19 2010/02/26 19:25:07 jym Exp $	*/
+/*	$NetBSD: x86_xpmap.c,v 1.20 2010/07/15 23:20:34 jym Exp $	*/
 
 /*
  * Copyright (c) 2006 Mathieu Ropert <m...@adviseo.fr>
@@ -69,7 +69,7 @@
 
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: x86_xpmap.c,v 1.19 2010/02/26 19:25:07 jym Exp $");
+__KERNEL_RCSID(0, "$NetBSD: x86_xpmap.c,v 1.20 2010/07/15 23:20:34 jym Exp $");
 
 #include "opt_xen.h"
 #include "opt_ddb.h"
@@ -816,7 +816,7 @@
 #endif
 #ifdef __i386__
 	/* Save phys. addr of PDP, for libkvm. */
-	PDPpaddr = (long)pde;
+	PDPpaddr = (long)pde - KERNBASE;
 #ifdef PAE
 	/* also save the address of the L3 page */
 	pmap_l3pd = pdtpe;

Reply via email to