diff options
author | Sree Kuchibhotla <sreek@google.com> | 2016-10-27 17:03:04 -0700 |
---|---|---|
committer | Sree Kuchibhotla <sreek@google.com> | 2016-10-27 17:03:04 -0700 |
commit | aea3105b671665751d95f830bfe5654c31aa3a41 (patch) | |
tree | 23694f831f22d81d4a6fa0920662d0647cedd791 /src | |
parent | 612ca22ff35a4d6d7366963ef9423981cfb00ec3 (diff) | |
parent | c293f7215fa77e2d1132a7bcc0e0610c8d054044 (diff) |
Merge branch 'master' into rpc_mgr
Diffstat (limited to 'src')
-rw-r--r-- | src/core/lib/iomgr/ev_epoll_linux.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/core/lib/iomgr/ev_epoll_linux.c b/src/core/lib/iomgr/ev_epoll_linux.c index 8381f4a63a..db51ec4939 100644 --- a/src/core/lib/iomgr/ev_epoll_linux.c +++ b/src/core/lib/iomgr/ev_epoll_linux.c @@ -1711,6 +1711,12 @@ retry: "pollset_add_fd: Raced creating new polling island. pi_new: %p " "(fd: %d, pollset: %p)", (void *)pi_new, fd->fd, (void *)pollset); + + /* No need to lock 'pi_new' here since this is a new polling island and + * no one has a reference to it yet */ + polling_island_remove_all_fds_locked(pi_new, true, &error); + + /* Ref and unref so that the polling island gets deleted during unref */ PI_ADD_REF(pi_new, "dance_of_destruction"); PI_UNREF(exec_ctx, pi_new, "dance_of_destruction"); goto retry; |