aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/lib/surface
diff options
context:
space:
mode:
authorGravatar Vijay Pai <vpai@google.com>2018-11-02 15:35:44 -0700
committerGravatar Vijay Pai <vpai@google.com>2018-11-02 15:35:44 -0700
commit8a7f945fa0e040be37ff223577f0eaf85812925c (patch)
tree8d737265cb671b7427d73bcb390f62e7b9e8c370 /src/core/lib/surface
parent5e6c4491bf60aa91bd3e4fed3c8203601a4c795e (diff)
Resolve a deadlock in callback CQ shutdown
Diffstat (limited to 'src/core/lib/surface')
-rw-r--r--src/core/lib/surface/completion_queue.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/core/lib/surface/completion_queue.cc b/src/core/lib/surface/completion_queue.cc
index b81ae73b4d..661022ec5f 100644
--- a/src/core/lib/surface/completion_queue.cc
+++ b/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);
if (gpr_atm_full_fetch_add(&cqd->pending_events, -1) == 1) {
- cq_finish_shutdown_callback(cq);
gpr_mu_unlock(cq->mu);
+ cq_finish_shutdown_callback(cq);
} else {
gpr_mu_unlock(cq->mu);
}