19 #ifndef __TARGET_XEN_VM_H__
20 #define __TARGET_XEN_VM_H__
27 #include <xen/hvm/save.h>
46 #define XV_TSREG_START_INDEX 126
47 #define XV_TSREG_COUNT 14
48 #define XV_TSREG_END_INDEX (XV_TSREG_START_INDEX - XV_TSREG_COUNT + 1)
144 uint8_t *hvm_context_buf;
145 uint32_t hvm_context_bufsiz;
146 HVM_SAVE_TYPE(CPU) *hvm_cpu;
162 unsigned long target_length,
unsigned char *buf);
164 unsigned long length,
unsigned char *buf);
177 unsigned char *(*read_phys)(
struct target *target,
ADDR paddr,
178 unsigned long length,
unsigned char *buf);
180 unsigned long length,
unsigned char *buf);
181 unsigned char *(*read_tid)(
struct target *target,
tid_t tid,
ADDR pgd,
ADDR addr,
182 unsigned long target_length,
unsigned char *buf);
184 unsigned long length,
unsigned char *buf);
185 int (*
fini)(
struct target *target);
shared_info_t * live_shinfo
unsigned int use_xenaccess
int(* handle_exception_any)(struct target *target)
int(* init)(struct target *target)
unsigned char * xen_vm_read_pid(struct target *target, int pid, ADDR addr, unsigned long target_length, unsigned char *buf)
int(* fini)(struct target *target)
unsigned int clear_mem_caches_each_exception
unsigned int no_hvm_setcontext
unsigned int no_hw_debug_reg_clear
unsigned int no_use_multiplexer
unsigned int hvm_monitor_trap_flag_set
int(* handle_exception_ours)(struct target *target)
int(* addr_v2p)(struct target *target, tid_t tid, ADDR pgd, ADDR vaddr, ADDR *paddr)
#define XV_TSREG_START_INDEX
struct xen_vm_spec * xen_vm_build_spec(void)
struct xen_vm_mem_ops * memops
unsigned int hypervisor_ignores_userspace_exceptions
vcpu_guest_context_t context
unsigned long xen_vm_write_pid(struct target *target, int pid, ADDR addr, unsigned long length, unsigned char *buf)
char * xen_vm_vmp_client_path
int(* attach)(struct target *target)
int(* handle_pause)(struct target *target)
unsigned long int memcache_mmap_size
arch_x86_v2p_flags_t v2p_flags
unsigned long(* write_tid)(struct target *target, tid_t tid, ADDR pgd, ADDR addr, unsigned long length, unsigned char *buf)
struct target_spec * spec
int xen_vm_spec_to_argv(struct target_spec *spec, int *argc, char ***argv)
unsigned long(* write_phys)(struct target *target, ADDR paddr, unsigned long length, unsigned char *buf)
void xen_vm_free_spec(struct xen_vm_spec *xspec)
struct target * xen_vm_instantiate(struct target_spec *spec, struct evloop *evloop)
struct target_ops xen_vm_ops