svn commit: r245142 - projects/amd64_xen_pv/sys/amd64/xen

Cherry G. Mathew cherry at FreeBSD.org
Tue Jan 8 01:33:23 UTC 2013


Author: cherry
Date: Tue Jan  8 01:33:22 2013
New Revision: 245142
URL: http://svnweb.freebsd.org/changeset/base/245142

Log:
  Add xen_pt_user_switch()
  
  Approved by: gibbs(implicit)

Modified:
  projects/amd64_xen_pv/sys/amd64/xen/mm.c

Modified: projects/amd64_xen_pv/sys/amd64/xen/mm.c
==============================================================================
--- projects/amd64_xen_pv/sys/amd64/xen/mm.c	Tue Jan  8 01:31:31 2013	(r245141)
+++ projects/amd64_xen_pv/sys/amd64/xen/mm.c	Tue Jan  8 01:33:22 2013	(r245142)
@@ -181,6 +181,20 @@ xen_pt_switch(vm_paddr_t kpml4phys)
 }
 
 void
+xen_pt_user_switch(vm_paddr_t upml4phys)
+{
+	struct mmuext_op op;
+#ifdef INVARIANTS
+	SET_VCPU();
+	
+	KASSERT(XPQ_IDX == 0, ("pending operations XPQ_IDX=%d", XPQ_IDX));
+#endif
+	op.cmd = MMUEXT_NEW_USER_BASEPTR;
+	op.arg1.mfn = xpmap_ptom(upml4phys) >> PAGE_SHIFT;
+	PANIC_IF(HYPERVISOR_mmuext_op(&op, 1, NULL, DOMID_SELF) < 0);
+}
+
+void
 _xen_machphys_update(vm_paddr_t mfn, vm_paddr_t pfn, char *file, int line)
 {
 	SET_VCPU();


More information about the svn-src-projects mailing list