diff options
author | Mehrdad Afshari <mmx@google.com> | 2018-01-02 14:01:10 -0800 |
---|---|---|
committer | Mehrdad Afshari <mmx@google.com> | 2018-01-02 14:01:10 -0800 |
commit | 6dc1c50b937837414f14961fe4d1ee2c47c1d6c7 (patch) | |
tree | 7b9e38e7167a40d13ba4ceaedac82f3454a5b1cd /src/core/lib/iomgr/ev_poll_posix.cc | |
parent | 63392f682e21543099926251b642cdcd0be2a17f (diff) |
Revert "Fix a Python spinlock bug"
This reverts commit 2df509fc0e8628d6d4431139ce953c70796a21eb.
Diffstat (limited to 'src/core/lib/iomgr/ev_poll_posix.cc')
-rw-r--r-- | src/core/lib/iomgr/ev_poll_posix.cc | 11 |
1 files changed, 1 insertions, 10 deletions
diff --git a/src/core/lib/iomgr/ev_poll_posix.cc b/src/core/lib/iomgr/ev_poll_posix.cc index 7ea1dfaa80..5fa02017f0 100644 --- a/src/core/lib/iomgr/ev_poll_posix.cc +++ b/src/core/lib/iomgr/ev_poll_posix.cc @@ -71,7 +71,6 @@ struct grpc_fd { int shutdown; int closed; int released; - gpr_atm pollhup; grpc_error* shutdown_error; /* The watcher list. @@ -336,7 +335,6 @@ static grpc_fd* fd_create(int fd, const char* name) { r->on_done_closure = nullptr; r->closed = 0; r->released = 0; - gpr_atm_no_barrier_store(&r->pollhup, 0); r->read_notifier_pollset = nullptr; char* name2; @@ -952,8 +950,7 @@ static grpc_error* pollset_work(grpc_pollset* pollset, pfds[0].events = POLLIN; pfds[0].revents = 0; for (i = 0; i < pollset->fd_count; i++) { - if (fd_is_orphaned(pollset->fds[i]) || - gpr_atm_no_barrier_load(&pollset->fds[i]->pollhup) == 1) { + if (fd_is_orphaned(pollset->fds[i])) { GRPC_FD_UNREF(pollset->fds[i], "multipoller"); } else { pollset->fds[fd_count++] = pollset->fds[i]; @@ -1020,12 +1017,6 @@ static grpc_error* pollset_work(grpc_pollset* pollset, pfds[i].fd, (pfds[i].revents & POLLIN_CHECK) != 0, (pfds[i].revents & POLLOUT_CHECK) != 0, pfds[i].revents); } - /* This is a mitigation to prevent poll() from spinning on a - ** POLLHUP https://github.com/grpc/grpc/pull/13665 - */ - if (pfds[i].revents & POLLHUP) { - gpr_atm_no_barrier_store(&watchers[i].fd->pollhup, 1); - } fd_end_poll(&watchers[i], pfds[i].revents & POLLIN_CHECK, pfds[i].revents & POLLOUT_CHECK, pollset); } |