+ xbt_mutex_acquire(bar->mutex);
+ bar->arrived_processes++;
+ XBT_DEBUG("waiting %p %u/%u", bar, bar->arrived_processes, bar->expected_processes);
+ if (bar->arrived_processes == bar->expected_processes) {
+ xbt_cond_broadcast(bar->cond);
+ xbt_mutex_release(bar->mutex);
+ bar->arrived_processes = 0;