aboutsummaryrefslogtreecommitdiff
path: root/src/runtime/netpoll_aix.go
diff options
context:
space:
mode:
authorMikio Hara <mikioh.public.networking@gmail.com>2019-03-15 05:10:08 +0900
committerMikio Hara <mikioh.public.networking@gmail.com>2019-03-19 08:30:50 +0000
commit451a2eb0abf38874fb144963a44356495141465d (patch)
treec8299d003a9527ff02494d6faddbce5a2f562e1c /src/runtime/netpoll_aix.go
parentd24d25b4e43badc38539b563f5264b341ccf3746 (diff)
downloadgo-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.go2
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)