diff options
author | Andres Lagar-Cavilla <andres@lagarcavilla.org> | 2011-12-01 14:56:42 +0000 |
---|---|---|
committer | Andres Lagar-Cavilla <andres@lagarcavilla.org> | 2011-12-01 14:56:42 +0000 |
commit | 5e6ced1018bfc0811e15508d0c59f1cb6a86622a (patch) | |
tree | 64c8f83b2642d4d482355eaf6dd08de3f9ec42da /xen/include/public/domctl.h | |
parent | 6f76ec6118c6be95c5ad87c4c138e876cad2d90f (diff) | |
download | xen-5e6ced1018bfc0811e15508d0c59f1cb6a86622a.tar.gz xen-5e6ced1018bfc0811e15508d0c59f1cb6a86622a.tar.bz2 xen-5e6ced1018bfc0811e15508d0c59f1cb6a86622a.zip |
x86/mm: Rework stale p2m auditing
The p2m audit code doesn't even compile, let alone work. It also
partially supports ept. Make it:
- compile
- lay groundwork for eventual ept support
- move out of the way of all calls and turn it into a domctl. It's
obviously not being used by anybody presently.
- enable it via said domctl
Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Signed-off-by: Tim Deegan <tim@xen.org>
Acked-by: Tim Deegan <tim@xen.org>
Committed-by: Tim Deegan <tim@xen.org>
Diffstat (limited to 'xen/include/public/domctl.h')
-rw-r--r-- | xen/include/public/domctl.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/xen/include/public/domctl.h b/xen/include/public/domctl.h index ea8fce63d9..b265a47aec 100644 --- a/xen/include/public/domctl.h +++ b/xen/include/public/domctl.h @@ -800,6 +800,16 @@ struct xen_domctl_mem_sharing_op { typedef struct xen_domctl_mem_sharing_op xen_domctl_mem_sharing_op_t; DEFINE_XEN_GUEST_HANDLE(xen_domctl_mem_sharing_op_t); +struct xen_domctl_audit_p2m { + /* OUT error counts */ + uint64_t orphans_debug; + uint64_t orphans_invalid; + uint64_t m2p_bad; + uint64_t p2m_bad; +}; +typedef struct xen_domctl_audit_p2m xen_domctl_audit_p2m_t; +DEFINE_XEN_GUEST_HANDLE(xen_domctl_audit_p2m_t); + #if defined(__i386__) || defined(__x86_64__) /* XEN_DOMCTL_setvcpuextstate */ /* XEN_DOMCTL_getvcpuextstate */ @@ -898,6 +908,7 @@ struct xen_domctl { #define XEN_DOMCTL_setvcpuextstate 62 #define XEN_DOMCTL_getvcpuextstate 63 #define XEN_DOMCTL_set_access_required 64 +#define XEN_DOMCTL_audit_p2m 65 #define XEN_DOMCTL_gdbsx_guestmemio 1000 #define XEN_DOMCTL_gdbsx_pausevcpu 1001 #define XEN_DOMCTL_gdbsx_unpausevcpu 1002 @@ -951,6 +962,7 @@ struct xen_domctl { struct xen_domctl_vcpuextstate vcpuextstate; #endif struct xen_domctl_set_access_required access_required; + struct xen_domctl_audit_p2m audit_p2m; struct xen_domctl_gdbsx_memio gdbsx_guest_memio; struct xen_domctl_gdbsx_pauseunp_vcpu gdbsx_pauseunp_vcpu; struct xen_domctl_gdbsx_domstatus gdbsx_domstatus; |