svn commit: r241497 - in projects/bhyve/sys/amd64: include vmm/intel
Peter Grehan
grehan at FreeBSD.org
Fri Oct 12 23:12:20 UTC 2012
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:
More information about the svn-src-projects
mailing list