aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/lib/iomgr/polling_entity.cc
diff options
context:
space:
mode:
authorGravatar Yash Tibrewal <yashkt@google.com>2017-10-13 16:07:13 -0700
committerGravatar Yash Tibrewal <yashkt@google.com>2017-10-18 17:12:19 -0700
commit0ee7574732a06e8cace4e099a678f4bd5dbff679 (patch)
treee43d5de442fdcc3d39cd5af687f319fa39612d3f /src/core/lib/iomgr/polling_entity.cc
parent6bf5f833efe2cb9e2ecc14358dd9699cd5d05263 (diff)
Removing instances of exec_ctx being passed around in functions in
src/core. exec_ctx is now a thread_local pointer of type ExecCtx instead of grpc_exec_ctx which is initialized whenever ExecCtx is instantiated. ExecCtx also keeps track of the previous exec_ctx so that nesting of exec_ctx is allowed. This means that there is only one exec_ctx being used at any time. Also, grpc_exec_ctx_finish is called in the destructor of the object, and the previous exec_ctx is restored to avoid breaking current functionality. The code still explicitly calls grpc_exec_ctx_finish because removing all such instances causes the code to break.
Diffstat (limited to 'src/core/lib/iomgr/polling_entity.cc')
-rw-r--r--src/core/lib/iomgr/polling_entity.cc16
1 files changed, 6 insertions, 10 deletions
diff --git a/src/core/lib/iomgr/polling_entity.cc b/src/core/lib/iomgr/polling_entity.cc
index 8591a5518e..06b78e823d 100644
--- a/src/core/lib/iomgr/polling_entity.cc
+++ b/src/core/lib/iomgr/polling_entity.cc
@@ -56,32 +56,28 @@ bool grpc_polling_entity_is_empty(const grpc_polling_entity *pollent) {
return pollent->tag == GRPC_POLLS_NONE;
}
-void grpc_polling_entity_add_to_pollset_set(grpc_exec_ctx *exec_ctx,
- grpc_polling_entity *pollent,
+void grpc_polling_entity_add_to_pollset_set(grpc_polling_entity *pollent,
grpc_pollset_set *pss_dst) {
if (pollent->tag == GRPC_POLLS_POLLSET) {
GPR_ASSERT(pollent->pollent.pollset != NULL);
- grpc_pollset_set_add_pollset(exec_ctx, pss_dst, pollent->pollent.pollset);
+ grpc_pollset_set_add_pollset(pss_dst, pollent->pollent.pollset);
} else if (pollent->tag == GRPC_POLLS_POLLSET_SET) {
GPR_ASSERT(pollent->pollent.pollset_set != NULL);
- grpc_pollset_set_add_pollset_set(exec_ctx, pss_dst,
- pollent->pollent.pollset_set);
+ grpc_pollset_set_add_pollset_set(pss_dst, pollent->pollent.pollset_set);
} else {
gpr_log(GPR_ERROR, "Invalid grpc_polling_entity tag '%d'", pollent->tag);
abort();
}
}
-void grpc_polling_entity_del_from_pollset_set(grpc_exec_ctx *exec_ctx,
- grpc_polling_entity *pollent,
+void grpc_polling_entity_del_from_pollset_set(grpc_polling_entity *pollent,
grpc_pollset_set *pss_dst) {
if (pollent->tag == GRPC_POLLS_POLLSET) {
GPR_ASSERT(pollent->pollent.pollset != NULL);
- grpc_pollset_set_del_pollset(exec_ctx, pss_dst, pollent->pollent.pollset);
+ grpc_pollset_set_del_pollset(pss_dst, pollent->pollent.pollset);
} else if (pollent->tag == GRPC_POLLS_POLLSET_SET) {
GPR_ASSERT(pollent->pollent.pollset_set != NULL);
- grpc_pollset_set_del_pollset_set(exec_ctx, pss_dst,
- pollent->pollent.pollset_set);
+ grpc_pollset_set_del_pollset_set(pss_dst, pollent->pollent.pollset_set);
} else {
gpr_log(GPR_ERROR, "Invalid grpc_polling_entity tag '%d'", pollent->tag);
abort();