You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by zw...@apache.org on 2017/03/08 17:47:11 UTC
[trafficserver] 02/02: Ignore read and write errors if vio has been
cleared recommendation from Oknet
This is an automated email from the ASF dual-hosted git repository.
zwoop pushed a commit to branch 7.1.x
in repository https://gitbox.apache.org/repos/asf/trafficserver.git
commit 985a5d9e21f2938002295ea6af358df50c12873c
Author: Bryan Call <bc...@apache.org>
AuthorDate: Mon Mar 6 14:12:27 2017 -0800
Ignore read and write errors if vio has been cleared
recommendation from Oknet
(cherry picked from commit a128d56aee215ac5f74e449609317104ec3a76d7)
---
iocore/net/UnixNet.cc | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/iocore/net/UnixNet.cc b/iocore/net/UnixNet.cc
index 85d7527..c7f1798 100644
--- a/iocore/net/UnixNet.cc
+++ b/iocore/net/UnixNet.cc
@@ -505,7 +505,7 @@ NetHandler::mainNetEvent(int event, Event *e)
set_cont_flags(vc->control_flags);
if (vc->closed)
close_UnixNetVConnection(vc, trigger_event->ethread);
- else if ((vc->read.enabled || vc->read.error) && vc->read.triggered)
+ else if (vc->read.triggered && (vc->read.enabled || (vc->read.error && vc->read.vio._cont != nullptr)))
vc->net_read_io(this, trigger_event->ethread);
else if (!vc->read.enabled) {
read_ready_list.remove(vc);
@@ -522,7 +522,7 @@ NetHandler::mainNetEvent(int event, Event *e)
set_cont_flags(vc->control_flags);
if (vc->closed)
close_UnixNetVConnection(vc, trigger_event->ethread);
- else if ((vc->write.enabled || vc->write.error) && vc->write.triggered)
+ else if (vc->write.triggered && (vc->write.enabled || (vc->write.error && vc->write.vio._cont != nullptr)))
write_to_net(this, vc, trigger_event->ethread);
else if (!vc->write.enabled) {
write_ready_list.remove(vc);
@@ -540,7 +540,7 @@ NetHandler::mainNetEvent(int event, Event *e)
diags->set_override(vc->control.debug_override);
if (vc->closed)
close_UnixNetVConnection(vc, trigger_event->ethread);
- else if ((vc->read.enabled || vc->read.error) && vc->read.triggered)
+ else if (vc->read.triggered && (vc->read.enabled || (vc->read.error && vc->read.vio._cont != nullptr)))
vc->net_read_io(this, trigger_event->ethread);
else if (!vc->read.enabled)
vc->ep.modify(-EVENTIO_READ);
@@ -549,7 +549,7 @@ NetHandler::mainNetEvent(int event, Event *e)
diags->set_override(vc->control.debug_override);
if (vc->closed)
close_UnixNetVConnection(vc, trigger_event->ethread);
- else if ((vc->write.enabled || vc->write.error) && vc->write.triggered)
+ else if (vc->write.triggered && (vc->write.enabled || (vc->write.error && vc->write.vio._cont != nullptr)))
write_to_net(this, vc, trigger_event->ethread);
else if (!vc->write.enabled)
vc->ep.modify(-EVENTIO_WRITE);
--
To stop receiving notification emails like this one, please contact
"commits@trafficserver.apache.org" <co...@trafficserver.apache.org>.