bluesky_time_hires elapsed = bluesky_now_hires() - async->start_time;
bluesky_time_hires latency = bluesky_now_hires() - async->exec_time;
- g_mutex_lock(async->store->lock);
- async->store->pending--;
- if (async->store->pending == 0)
- g_cond_broadcast(async->store->cond_idle);
- g_mutex_unlock(async->store->lock);
+ if (async->op != STORE_OP_BARRIER) {
+ g_mutex_lock(async->store->lock);
+ async->store->pending--;
+ if (async->store->pending == 0)
+ g_cond_broadcast(async->store->cond_idle);
+ g_mutex_unlock(async->store->lock);
+ }
async->status = ASYNC_COMPLETE;
g_cond_broadcast(async->completion_cond);