From a3ae76e715fd84711dc86acf67df32d34934ccfb Mon Sep 17 00:00:00 2001 From: Susan Hinrichs Date: Thu, 4 Mar 2021 19:25:03 +0000 Subject: [PATCH 1/2] Adapt to continuation changes in write event handling --- iocore/net/UnixNetVConnection.cc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/iocore/net/UnixNetVConnection.cc b/iocore/net/UnixNetVConnection.cc index d678c657a39..c782ba5f5fa 100644 --- a/iocore/net/UnixNetVConnection.cc +++ b/iocore/net/UnixNetVConnection.cc @@ -431,6 +431,9 @@ write_to_net_io(NetHandler *nh, UnixNetVConnection *vc, EThread *thread) if (towrite != ntodo && buf.writer()->write_avail()) { if (write_signal_and_update(VC_EVENT_WRITE_READY, vc) != EVENT_CONT) { return; + } else if (c != s->vio.cont) { /* The write vio was updated in the handler */ + write_reschedule(nh, vc); + return; } ntodo = s->vio.ntodo(); From b52fb0c0dd403c55a9118e3fca01304f4305aa98 Mon Sep 17 00:00:00 2001 From: Susan Hinrichs Date: Thu, 4 Mar 2021 20:57:36 +0000 Subject: [PATCH 2/2] Declare the variable --- iocore/net/UnixNetVConnection.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/iocore/net/UnixNetVConnection.cc b/iocore/net/UnixNetVConnection.cc index c782ba5f5fa..90cf7fdcfbe 100644 --- a/iocore/net/UnixNetVConnection.cc +++ b/iocore/net/UnixNetVConnection.cc @@ -353,6 +353,7 @@ write_to_net_io(NetHandler *nh, UnixNetVConnection *vc, EThread *thread) { NetState *s = &vc->write; ProxyMutex *mutex = thread->mutex.get(); + Continuation *c = vc->write.vio.cont; MUTEX_TRY_LOCK(lock, s->vio.mutex, thread);