Resolve a deadlock in callback CQ shutdown

pull/17089/head
Vijay Pai 6 years ago
parent 5e6c4491bf
commit 8a7f945fa0
  1. 2
      src/core/lib/surface/completion_queue.cc

@ -859,8 +859,8 @@ static void cq_end_op_for_callback(
gpr_atm_no_barrier_fetch_add(&cqd->things_queued_ever, 1); gpr_atm_no_barrier_fetch_add(&cqd->things_queued_ever, 1);
if (gpr_atm_full_fetch_add(&cqd->pending_events, -1) == 1) { if (gpr_atm_full_fetch_add(&cqd->pending_events, -1) == 1) {
cq_finish_shutdown_callback(cq);
gpr_mu_unlock(cq->mu); gpr_mu_unlock(cq->mu);
cq_finish_shutdown_callback(cq);
} else { } else {
gpr_mu_unlock(cq->mu); gpr_mu_unlock(cq->mu);
} }

Loading…
Cancel
Save