diff options
author | Keir Fraser <keir.fraser@citrix.com> | 2009-12-17 06:27:55 +0000 |
---|---|---|
committer | Keir Fraser <keir.fraser@citrix.com> | 2009-12-17 06:27:55 +0000 |
commit | bd8fd8c198f6a1acc9ac86775977136fdb1ff5a7 (patch) | |
tree | f697a8be40898de2fab276c08a96485efe36c203 /xen/include/public/domctl.h | |
parent | 7fed9658c301952c96cc03ab92e95d6b0c2e7e0e (diff) | |
download | xen-bd8fd8c198f6a1acc9ac86775977136fdb1ff5a7.tar.gz xen-bd8fd8c198f6a1acc9ac86775977136fdb1ff5a7.tar.bz2 xen-bd8fd8c198f6a1acc9ac86775977136fdb1ff5a7.zip |
domctl support for generic memory event handling.
Signed-off-by: Patrick Colp <Patrick.Colp@citrix.com>
Diffstat (limited to 'xen/include/public/domctl.h')
-rw-r--r-- | xen/include/public/domctl.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/xen/include/public/domctl.h b/xen/include/public/domctl.h index 88b19a4ffe..7a378a3519 100644 --- a/xen/include/public/domctl.h +++ b/xen/include/public/domctl.h @@ -691,6 +691,31 @@ struct xen_domctl_gdbsx_domstatus { }; +/* + * Memory event operations + */ + +#define XEN_DOMCTL_mem_event_op 56 + +/* Add and remove memory handlers */ +#define XEN_DOMCTL_MEM_EVENT_OP_ENABLE 0 +#define XEN_DOMCTL_MEM_EVENT_OP_DISABLE 1 + +struct xen_domctl_mem_event_op { + uint32_t op; /* XEN_DOMCTL_MEM_EVENT_OP_* */ + uint32_t mode; /* XEN_DOMCTL_MEM_EVENT_ENABLE_* */ + + /* OP_ENABLE */ + unsigned long shared_addr; /* IN: Virtual address of shared page */ + unsigned long ring_addr; /* IN: Virtual address of ring page */ + + /* Other OPs */ + unsigned long gfn; /* IN: gfn of page being operated on */ +}; +typedef struct xen_domctl_mem_event_op xen_domctl_mem_event_op_t; +DEFINE_XEN_GUEST_HANDLE(xen_domctl_mem_event_op_t); + + struct xen_domctl { uint32_t cmd; uint32_t interface_version; /* XEN_DOMCTL_INTERFACE_VERSION */ @@ -734,6 +759,7 @@ struct xen_domctl { struct xen_domctl_set_target set_target; struct xen_domctl_subscribe subscribe; struct xen_domctl_debug_op debug_op; + struct xen_domctl_mem_event_op mem_event_op; #if defined(__i386__) || defined(__x86_64__) struct xen_domctl_cpuid cpuid; #endif |