X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Finclude%2Fpalacios%2Fvmm_barrier.h;h=19f54fc73f065d72f11b886f5e83c72c8d544c26;hb=ce3ab888e2ca5f14a89da45b4dc64122ff1e1050;hp=4513c094ff2a3b216adff0716a5241be5916d4fe;hpb=882a72ee6359eb1f28754827a7e41380f275d148;p=palacios.git diff --git a/palacios/include/palacios/vmm_barrier.h b/palacios/include/palacios/vmm_barrier.h index 4513c09..19f54fc 100644 --- a/palacios/include/palacios/vmm_barrier.h +++ b/palacios/include/palacios/vmm_barrier.h @@ -22,19 +22,30 @@ #ifdef __V3VEE__ +#include +#include -#include -struct v3_barrier { - +struct v3_barrier { int active; // If 1, barrier is active, everyone must wait // If 0, barrier is clear, can proceed + struct v3_bitmap cpu_map; + v3_lock_t lock; }; +struct v3_vm_info; +struct guest_info; + +int v3_init_barrier(struct v3_vm_info * vm_info); +int v3_deinit_barrier(struct v3_vm_info * vm_info); + +int v3_raise_barrier(struct v3_vm_info * vm_info, struct guest_info * local_core); +int v3_lower_barrier(struct v3_vm_info * vm_info); +int v3_wait_at_barrier(struct guest_info * core); #endif