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.


Convert shadow paging to use 32 PAE (Remove 32 Bit Restrictions)
[palacios.git] / palacios / include / palacios / vmm_direct_paging.h
index 22843fd..6404e6f 100644 (file)
 #include <palacios/vmm_mem.h>
 #include <palacios/vmm_paging.h>
 
-addr_t v3_create_direct_passthrough_pts(struct guest_info * guest_info);
+int v3_init_passthrough_pts(struct guest_info * guest_info);
+int v3_free_passthrough_pts(struct guest_info * core);
+
+int v3_reset_passthrough_pts(struct guest_info * guest_info);
 
 int v3_handle_passthrough_pagefault(struct guest_info * info, addr_t fault_addr, pf_error_t error_code);
 int v3_handle_nested_pagefault(struct guest_info * info, addr_t fault_addr, pf_error_t error_code);
 
+int v3_activate_passthrough_pt(struct guest_info * info);
+
+int v3_invalidate_passthrough_addr(struct guest_info * info, addr_t inv_addr);
+// The range invalidated is minimally [start, end]
+int v3_invalidate_passthrough_addr_range(struct guest_info * info, 
+                                        addr_t inv_addr_start, addr_t inv_addr_end);
+
+int v3_invalidate_nested_addr(struct guest_info * info, addr_t inv_addr);
+// The range invalidated is minimally [start, end]
+int v3_invalidate_nested_addr_range(struct guest_info * info, 
+                                   addr_t inv_addr_start, addr_t inv_addr_end);
+
 #endif // ! __V3VEE__
 
 #endif