aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/lib/iomgr/ev_epoll_limited_pollers_linux.c
diff options
context:
space:
mode:
authorGravatar Yuchen Zeng <y-zeng@users.noreply.github.com>2017-07-24 11:32:22 -0700
committerGravatar GitHub <noreply@github.com>2017-07-24 11:32:22 -0700
commit9511aefaa9779762daef3040a04627c435f9c392 (patch)
treed3876d4c497254409c9ede1aef4e3a8ba4912c5f /src/core/lib/iomgr/ev_epoll_limited_pollers_linux.c
parenta2f0e197256ab586394d843f19ff49d36df8f723 (diff)
parent9968c253cda0b039c7bae6afb9ac29d74b63bc9b (diff)
Merge pull request #11786 from y-zeng/fd_orphan
Support closed fd in grpc_fd_orphan()
Diffstat (limited to 'src/core/lib/iomgr/ev_epoll_limited_pollers_linux.c')
-rw-r--r--src/core/lib/iomgr/ev_epoll_limited_pollers_linux.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/core/lib/iomgr/ev_epoll_limited_pollers_linux.c b/src/core/lib/iomgr/ev_epoll_limited_pollers_linux.c
index 5166dc2ac2..f2f3e15704 100644
--- a/src/core/lib/iomgr/ev_epoll_limited_pollers_linux.c
+++ b/src/core/lib/iomgr/ev_epoll_limited_pollers_linux.c
@@ -931,7 +931,7 @@ static int fd_wrapped_fd(grpc_fd *fd) {
static void fd_orphan(grpc_exec_ctx *exec_ctx, grpc_fd *fd,
grpc_closure *on_done, int *release_fd,
- const char *reason) {
+ bool already_closed, const char *reason) {
grpc_error *error = GRPC_ERROR_NONE;
polling_island *unref_pi = NULL;
@@ -952,8 +952,7 @@ static void fd_orphan(grpc_exec_ctx *exec_ctx, grpc_fd *fd,
before doing this.) */
if (fd->po.pi != NULL) {
polling_island *pi_latest = polling_island_lock(fd->po.pi);
- polling_island_remove_fd_locked(pi_latest, fd, false /* is_fd_closed */,
- &error);
+ polling_island_remove_fd_locked(pi_latest, fd, already_closed, &error);
gpr_mu_unlock(&pi_latest->mu);
unref_pi = fd->po.pi;