diff options
author | Mikio Hara <mikioh.public.networking@gmail.com> | 2019-03-15 05:10:08 +0900 |
---|---|---|
committer | Mikio Hara <mikioh.public.networking@gmail.com> | 2019-03-19 08:30:50 +0000 |
commit | 451a2eb0abf38874fb144963a44356495141465d (patch) | |
tree | c8299d003a9527ff02494d6faddbce5a2f562e1c /src/runtime/netpoll_aix.go | |
parent | d24d25b4e43badc38539b563f5264b341ccf3746 (diff) | |
download | go-451a2eb0abf38874fb144963a44356495141465d.tar.gz go-451a2eb0abf38874fb144963a44356495141465d.zip |
runtime, internal/poll: report only critical event scanning error
This change makes the runtime-integrated network poller report only
critical event scanning errors.
In the previous attempt, CL 166497, we treated any combination of error
events as event scanning errors and it caused false positives in event
waiters because platform-dependent event notification mechanisms allow
event originators to use various combination of events.
To avoid false positives, this change makes the poller treat an
individual error event as a critical event scanning error by the
convention of event notification mechanism implementations.
Updates #30624.
Fixes #30817.
Fixes #30840.
Change-Id: I906c9e83864527ff73f636fd02bab854d54684ea
Reviewed-on: https://go-review.googlesource.com/c/go/+/167777
Run-TryBot: Mikio Hara <mikioh.public.networking@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Diffstat (limited to 'src/runtime/netpoll_aix.go')
-rw-r--r-- | src/runtime/netpoll_aix.go | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/runtime/netpoll_aix.go b/src/runtime/netpoll_aix.go index b4d7de8c2a..0ad8718fe0 100644 --- a/src/runtime/netpoll_aix.go +++ b/src/runtime/netpoll_aix.go @@ -233,7 +233,7 @@ retry: println("*** netpollready i=", i, "revents=", pfd.revents, "events=", pfd.events, "pd=", pds[i]) } pds[i].everr = false - if pfd.revents&_POLLERR != 0 { + if pfd.revents == _POLLERR { pds[i].everr = true } netpollready(&toRun, pds[i], mode) |