Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 12 Oct 2012 23:12:20 +0000 (UTC)
From:      Peter Grehan <grehan@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r241497 - in projects/bhyve/sys/amd64: include vmm/intel
Message-ID:  <201210122312.q9CNCK6A093324@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: grehan
Date: Fri Oct 12 23:12:19 2012
New Revision: 241497
URL: http://svn.freebsd.org/changeset/base/241497

Log:
  Add the guest physical address and r/w/x bits to
  the paging exit in preparation for a rework of
  bhyve MMIO handling.
  
  Reviewed by:	neel
  Obtained from:	NetApp

Modified:
  projects/bhyve/sys/amd64/include/vmm.h
  projects/bhyve/sys/amd64/vmm/intel/vmx.c

Modified: projects/bhyve/sys/amd64/include/vmm.h
==============================================================================
--- projects/bhyve/sys/amd64/include/vmm.h	Fri Oct 12 22:48:33 2012	(r241496)
+++ projects/bhyve/sys/amd64/include/vmm.h	Fri Oct 12 23:12:19 2012	(r241497)
@@ -266,6 +266,8 @@ struct vm_exit {
 		} inout;
 		struct {
 			uint64_t	cr3;
+			uint64_t	gpa;
+			int		rwx;
 		} paging;
 		/*
 		 * VMX specific payload. Used when there is no "better"

Modified: projects/bhyve/sys/amd64/vmm/intel/vmx.c
==============================================================================
--- projects/bhyve/sys/amd64/vmm/intel/vmx.c	Fri Oct 12 22:48:33 2012	(r241496)
+++ projects/bhyve/sys/amd64/vmm/intel/vmx.c	Fri Oct 12 23:12:19 2012	(r241497)
@@ -1289,6 +1289,8 @@ vmx_exit_process(struct vmx *vmx, int vc
 		if (!handled) {
 			vmexit->exitcode = VM_EXITCODE_PAGING;
 			vmexit->u.paging.cr3 = cr3;
+			vmexit->u.paging.gpa = gpa;
+			vmexit->u.paging.rwx = qual & 0x7;
 		}
 		break;
 	default:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201210122312.q9CNCK6A093324>