From: Jack Lange Date: Thu, 22 Sep 2011 15:50:28 +0000 (-0400) Subject: multicore fix for barrier X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?p=palacios.git;a=commitdiff_plain;h=5f957c3aeebed4a07a0862cb5fbf595aa4436e81 multicore fix for barrier --- diff --git a/palacios/src/palacios/vmm_barrier.c b/palacios/src/palacios/vmm_barrier.c index 7718fc8..f7b863d 100644 --- a/palacios/src/palacios/vmm_barrier.c +++ b/palacios/src/palacios/vmm_barrier.c @@ -177,7 +177,7 @@ int v3_wait_at_barrier(struct guest_info * core) { V3_Print("Core %d bit set as waiting\n", core->vcpu_id); // wait for cpu bit to clear - while (v3_bitmap_check(&(barrier->cpu_map), core->vcpu_id) == 1) { + while (v3_bitmap_check(&(barrier->cpu_map), core->vcpu_id)) { v3_yield(core); } diff --git a/palacios/src/palacios/vmm_bitmap.c b/palacios/src/palacios/vmm_bitmap.c index c056a5b..0f26473 100644 --- a/palacios/src/palacios/vmm_bitmap.c +++ b/palacios/src/palacios/vmm_bitmap.c @@ -96,6 +96,6 @@ int v3_bitmap_check(struct v3_bitmap * bitmap, int index) { return -1; } - return (bitmap->bits[major] & (0x1 << minor)); + return ((bitmap->bits[major] & (0x1 << minor)) != 0); }