aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools
diff options
context:
space:
mode:
authorGravatar Craig Tiller <ctiller@google.com>2015-07-29 15:58:11 -0700
committerGravatar Craig Tiller <ctiller@google.com>2015-07-29 15:58:11 -0700
commit5ddbb9d405c01564b935e9ab81ae2833124e0b12 (patch)
tree1fd4d868339987be609ebb96331c023272c7b065 /tools
parent4b6a0c73f318f6bc3d6e81676b06d8619e5e8325 (diff)
Allow specific pollers to be woken
Currently, if two threads call grpc_completion_queue_pluck on the same completion queue for different tags, there is a 50% chance that we deliver the completion wakeup to the wrong poller - forcing the correct poller to wait until its polling times out before it can return an event up to the application. This change tweaks our polling interfaces so that we can indeed wake a specific poller. Nothing has been performance tuned yet. It's definitely sub-optimal in a number of places. Wakeup file-descriptors should be recycled. We should have a path that avoids calling poll() followed by epoll(). We can probably live without it right at the second though. This code will fail on Windows at least (I'll do that port when I'm in the office and have a Windows machine).
Diffstat (limited to 'tools')
-rw-r--r--tools/doxygen/Doxyfile.core.internal2
-rw-r--r--tools/run_tests/sources_and_headers.json20
-rw-r--r--tools/run_tests/tests.json8
3 files changed, 0 insertions, 30 deletions
diff --git a/tools/doxygen/Doxyfile.core.internal b/tools/doxygen/Doxyfile.core.internal
index a5d8d9b528..ebb90969f3 100644
--- a/tools/doxygen/Doxyfile.core.internal
+++ b/tools/doxygen/Doxyfile.core.internal
@@ -820,7 +820,6 @@ src/core/iomgr/iomgr.h \
src/core/iomgr/iomgr_internal.h \
src/core/iomgr/iomgr_posix.h \
src/core/iomgr/pollset.h \
-src/core/iomgr/pollset_kick_posix.h \
src/core/iomgr/pollset_posix.h \
src/core/iomgr/pollset_set.h \
src/core/iomgr/pollset_set_posix.h \
@@ -940,7 +939,6 @@ src/core/iomgr/iocp_windows.c \
src/core/iomgr/iomgr.c \
src/core/iomgr/iomgr_posix.c \
src/core/iomgr/iomgr_windows.c \
-src/core/iomgr/pollset_kick_posix.c \
src/core/iomgr/pollset_multipoller_with_epoll.c \
src/core/iomgr/pollset_multipoller_with_poll_posix.c \
src/core/iomgr/pollset_posix.c \
diff --git a/tools/run_tests/sources_and_headers.json b/tools/run_tests/sources_and_headers.json
index 3bd70506d3..8725728a36 100644
--- a/tools/run_tests/sources_and_headers.json
+++ b/tools/run_tests/sources_and_headers.json
@@ -826,20 +826,6 @@
],
"headers": [],
"language": "c",
- "name": "poll_kick_posix_test",
- "src": [
- "test/core/iomgr/poll_kick_posix_test.c"
- ]
- },
- {
- "deps": [
- "gpr",
- "gpr_test_util",
- "grpc",
- "grpc_test_util"
- ],
- "headers": [],
- "language": "c",
"name": "resolve_address_test",
"src": [
"test/core/iomgr/resolve_address_test.c"
@@ -10820,7 +10806,6 @@
"src/core/iomgr/iomgr_internal.h",
"src/core/iomgr/iomgr_posix.h",
"src/core/iomgr/pollset.h",
- "src/core/iomgr/pollset_kick_posix.h",
"src/core/iomgr/pollset_posix.h",
"src/core/iomgr/pollset_set.h",
"src/core/iomgr/pollset_set_posix.h",
@@ -10987,8 +10972,6 @@
"src/core/iomgr/iomgr_posix.h",
"src/core/iomgr/iomgr_windows.c",
"src/core/iomgr/pollset.h",
- "src/core/iomgr/pollset_kick_posix.c",
- "src/core/iomgr/pollset_kick_posix.h",
"src/core/iomgr/pollset_multipoller_with_epoll.c",
"src/core/iomgr/pollset_multipoller_with_poll_posix.c",
"src/core/iomgr/pollset_posix.c",
@@ -11282,7 +11265,6 @@
"src/core/iomgr/iomgr_internal.h",
"src/core/iomgr/iomgr_posix.h",
"src/core/iomgr/pollset.h",
- "src/core/iomgr/pollset_kick_posix.h",
"src/core/iomgr/pollset_posix.h",
"src/core/iomgr/pollset_set.h",
"src/core/iomgr/pollset_set_posix.h",
@@ -11427,8 +11409,6 @@
"src/core/iomgr/iomgr_posix.h",
"src/core/iomgr/iomgr_windows.c",
"src/core/iomgr/pollset.h",
- "src/core/iomgr/pollset_kick_posix.c",
- "src/core/iomgr/pollset_kick_posix.h",
"src/core/iomgr/pollset_multipoller_with_epoll.c",
"src/core/iomgr/pollset_multipoller_with_poll_posix.c",
"src/core/iomgr/pollset_posix.c",
diff --git a/tools/run_tests/tests.json b/tools/run_tests/tests.json
index a4b910eec5..4db06d5209 100644
--- a/tools/run_tests/tests.json
+++ b/tools/run_tests/tests.json
@@ -466,14 +466,6 @@
{
"flaky": false,
"language": "c",
- "name": "poll_kick_posix_test",
- "platforms": [
- "posix"
- ]
- },
- {
- "flaky": false,
- "language": "c",
"name": "resolve_address_test",
"platforms": [
"windows",