Palacios Public Git Repository

To checkout Palacios execute

  git clone http://v3vee.org/palacios/palacios.web/palacios.git
This will give you the master branch. You probably want the devel branch or one of the release branches. To switch to the devel branch, simply execute
  cd palacios
  git checkout --track -b devel origin/devel
The other branches are similar.


cleaned up the emulation code to be more general
[palacios.git] / palacios / include / palacios / vmm_emulator.h
index 9d1b6be..2f7913a 100644 (file)
 #include <palacios/vmm_paging.h>
 
 
+struct x86_instr;
 
-int v3_emulate_write_op(struct guest_info * info, addr_t write_gva, addr_t write_gpa, addr_t dst_addr, 
-                       int (*write_fn)(struct guest_info * core, addr_t guest_addr, void * src, uint_t length, void * priv_data), 
-                       void * priv_data);
+int v3_emulate(struct guest_info * core, struct x86_instr * instr, 
+              int mem_op_size, addr_t mem_hva_src, addr_t mem_hva_dst);
 
-int v3_emulate_read_op(struct guest_info * info, addr_t read_gva, addr_t read_gpa, addr_t src_addr,
-                      int (*read_fn)(struct guest_info * core, addr_t guest_addr, void * dst, uint_t length, void * priv_data), 
-                      int (*write_fn)(struct guest_info * core, addr_t guest_addr, void * src, uint_t length, void * priv_data), 
-                      void * priv_data);
 
 
 #endif // !__V3VEE__