Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Fields
x86_emulate_ops Struct Reference

#include <kvm_emulate.h>

Data Fields

ulong(* read_gpr )(struct x86_emulate_ctxt *ctxt, unsigned reg)
 
void(* write_gpr )(struct x86_emulate_ctxt *ctxt, unsigned reg, ulong val)
 
int(* read_std )(struct x86_emulate_ctxt *ctxt, unsigned long addr, void *val, unsigned int bytes, struct x86_exception *fault)
 
int(* write_std )(struct x86_emulate_ctxt *ctxt, unsigned long addr, void *val, unsigned int bytes, struct x86_exception *fault)
 
int(* fetch )(struct x86_emulate_ctxt *ctxt, unsigned long addr, void *val, unsigned int bytes, struct x86_exception *fault)
 
int(* read_emulated )(struct x86_emulate_ctxt *ctxt, unsigned long addr, void *val, unsigned int bytes, struct x86_exception *fault)
 
int(* write_emulated )(struct x86_emulate_ctxt *ctxt, unsigned long addr, const void *val, unsigned int bytes, struct x86_exception *fault)
 
int(* cmpxchg_emulated )(struct x86_emulate_ctxt *ctxt, unsigned long addr, const void *old, const void *new, unsigned int bytes, struct x86_exception *fault)
 
void(* invlpg )(struct x86_emulate_ctxt *ctxt, ulong addr)
 
int(* pio_in_emulated )(struct x86_emulate_ctxt *ctxt, int size, unsigned short port, void *val, unsigned int count)
 
int(* pio_out_emulated )(struct x86_emulate_ctxt *ctxt, int size, unsigned short port, const void *val, unsigned int count)
 
bool(* get_segment )(struct x86_emulate_ctxt *ctxt, u16 *selector, struct desc_struct *desc, u32 *base3, int seg)
 
void(* set_segment )(struct x86_emulate_ctxt *ctxt, u16 selector, struct desc_struct *desc, u32 base3, int seg)
 
unsigned long(* get_cached_segment_base )(struct x86_emulate_ctxt *ctxt, int seg)
 
void(* get_gdt )(struct x86_emulate_ctxt *ctxt, struct desc_ptr *dt)
 
void(* get_idt )(struct x86_emulate_ctxt *ctxt, struct desc_ptr *dt)
 
void(* set_gdt )(struct x86_emulate_ctxt *ctxt, struct desc_ptr *dt)
 
void(* set_idt )(struct x86_emulate_ctxt *ctxt, struct desc_ptr *dt)
 
ulong(* get_cr )(struct x86_emulate_ctxt *ctxt, int cr)
 
int(* set_cr )(struct x86_emulate_ctxt *ctxt, int cr, ulong val)
 
void(* set_rflags )(struct x86_emulate_ctxt *ctxt, ulong val)
 
int(* cpl )(struct x86_emulate_ctxt *ctxt)
 
int(* get_dr )(struct x86_emulate_ctxt *ctxt, int dr, ulong *dest)
 
int(* set_dr )(struct x86_emulate_ctxt *ctxt, int dr, ulong value)
 
int(* set_msr )(struct x86_emulate_ctxt *ctxt, u32 msr_index, u64 data)
 
int(* get_msr )(struct x86_emulate_ctxt *ctxt, u32 msr_index, u64 *pdata)
 
int(* read_pmc )(struct x86_emulate_ctxt *ctxt, u32 pmc, u64 *pdata)
 
void(* halt )(struct x86_emulate_ctxt *ctxt)
 
void(* wbinvd )(struct x86_emulate_ctxt *ctxt)
 
int(* fix_hypercall )(struct x86_emulate_ctxt *ctxt)
 
void(* get_fpu )(struct x86_emulate_ctxt *ctxt)
 
void(* put_fpu )(struct x86_emulate_ctxt *ctxt)
 
int(* intercept )(struct x86_emulate_ctxt *ctxt, struct x86_instruction_info *info, enum x86_intercept_stage stage)
 
void(* get_cpuid )(struct x86_emulate_ctxt *ctxt, u32 *eax, u32 *ebx, u32 *ecx, u32 *edx)
 

Detailed Description

Definition at line 87 of file kvm_emulate.h.

Field Documentation

int(* cmpxchg_emulated)(struct x86_emulate_ctxt *ctxt, unsigned long addr, const void *old, const void *new, unsigned int bytes, struct x86_exception *fault)

Definition at line 164 of file kvm_emulate.h.

int(* cpl)(struct x86_emulate_ctxt *ctxt)

Definition at line 193 of file kvm_emulate.h.

int(* fetch)(struct x86_emulate_ctxt *ctxt, unsigned long addr, void *val, unsigned int bytes, struct x86_exception *fault)

Definition at line 130 of file kvm_emulate.h.

int(* fix_hypercall)(struct x86_emulate_ctxt *ctxt)

Definition at line 201 of file kvm_emulate.h.

unsigned long(* get_cached_segment_base)(struct x86_emulate_ctxt *ctxt, int seg)

Definition at line 184 of file kvm_emulate.h.

void(* get_cpuid)(struct x86_emulate_ctxt *ctxt, u32 *eax, u32 *ebx, u32 *ecx, u32 *edx)

Definition at line 208 of file kvm_emulate.h.

ulong(* get_cr)(struct x86_emulate_ctxt *ctxt, int cr)

Definition at line 190 of file kvm_emulate.h.

int(* get_dr)(struct x86_emulate_ctxt *ctxt, int dr, ulong *dest)

Definition at line 194 of file kvm_emulate.h.

void(* get_fpu)(struct x86_emulate_ctxt *ctxt)

Definition at line 202 of file kvm_emulate.h.

void(* get_gdt)(struct x86_emulate_ctxt *ctxt, struct desc_ptr *dt)

Definition at line 186 of file kvm_emulate.h.

void(* get_idt)(struct x86_emulate_ctxt *ctxt, struct desc_ptr *dt)

Definition at line 187 of file kvm_emulate.h.

int(* get_msr)(struct x86_emulate_ctxt *ctxt, u32 msr_index, u64 *pdata)

Definition at line 197 of file kvm_emulate.h.

Definition at line 180 of file kvm_emulate.h.

void(* halt)(struct x86_emulate_ctxt *ctxt)

Definition at line 199 of file kvm_emulate.h.

Definition at line 204 of file kvm_emulate.h.

void(* invlpg)(struct x86_emulate_ctxt *ctxt, ulong addr)

Definition at line 170 of file kvm_emulate.h.

int(* pio_in_emulated)(struct x86_emulate_ctxt *ctxt, int size, unsigned short port, void *val, unsigned int count)

Definition at line 172 of file kvm_emulate.h.

int(* pio_out_emulated)(struct x86_emulate_ctxt *ctxt, int size, unsigned short port, const void *val, unsigned int count)

Definition at line 176 of file kvm_emulate.h.

void(* put_fpu)(struct x86_emulate_ctxt *ctxt)

Definition at line 203 of file kvm_emulate.h.

int(* read_emulated)(struct x86_emulate_ctxt *ctxt, unsigned long addr, void *val, unsigned int bytes, struct x86_exception *fault)

Definition at line 140 of file kvm_emulate.h.

ulong(* read_gpr)(struct x86_emulate_ctxt *ctxt, unsigned reg)

Definition at line 93 of file kvm_emulate.h.

int(* read_pmc)(struct x86_emulate_ctxt *ctxt, u32 pmc, u64 *pdata)

Definition at line 198 of file kvm_emulate.h.

int(* read_std)(struct x86_emulate_ctxt *ctxt, unsigned long addr, void *val, unsigned int bytes, struct x86_exception *fault)

Definition at line 108 of file kvm_emulate.h.

int(* set_cr)(struct x86_emulate_ctxt *ctxt, int cr, ulong val)

Definition at line 191 of file kvm_emulate.h.

int(* set_dr)(struct x86_emulate_ctxt *ctxt, int dr, ulong value)

Definition at line 195 of file kvm_emulate.h.

void(* set_gdt)(struct x86_emulate_ctxt *ctxt, struct desc_ptr *dt)

Definition at line 188 of file kvm_emulate.h.

void(* set_idt)(struct x86_emulate_ctxt *ctxt, struct desc_ptr *dt)

Definition at line 189 of file kvm_emulate.h.

int(* set_msr)(struct x86_emulate_ctxt *ctxt, u32 msr_index, u64 data)

Definition at line 196 of file kvm_emulate.h.

void(* set_rflags)(struct x86_emulate_ctxt *ctxt, ulong val)

Definition at line 192 of file kvm_emulate.h.

Definition at line 182 of file kvm_emulate.h.

void(* wbinvd)(struct x86_emulate_ctxt *ctxt)

Definition at line 200 of file kvm_emulate.h.

int(* write_emulated)(struct x86_emulate_ctxt *ctxt, unsigned long addr, const void *val, unsigned int bytes, struct x86_exception *fault)

Definition at line 151 of file kvm_emulate.h.

void(* write_gpr)(struct x86_emulate_ctxt *ctxt, unsigned reg, ulong val)

Definition at line 100 of file kvm_emulate.h.

int(* write_std)(struct x86_emulate_ctxt *ctxt, unsigned long addr, void *val, unsigned int bytes, struct x86_exception *fault)

Definition at line 120 of file kvm_emulate.h.


The documentation for this struct was generated from the following file: