Sounds good, thanks. Ethan
On Tue, Apr 30, 2013 at 12:29 PM, Ben Pfaff <b...@nicira.com> wrote: > I don't remember for sure anymore, but looking at patch 3/3 I suspect > that it's necessary once "ovs-ofctl monitor" starts responding to echo > requests. > > On Tue, Apr 30, 2013 at 12:26:40PM -0700, Ethan Jackson wrote: >> Acked-by: Ethan Jackson <et...@nicira.com> >> >> What prompted this? >> >> Ethan >> >> On Thu, Jan 31, 2013 at 4:17 PM, Ben Pfaff <b...@nicira.com> wrote: >> > Otherwise, if a monitor connection happens to be talking to a (misguided?) >> > peer that sends it messages, such as replies to what the peer perceives as >> > echo requests meant for it, then the peer will eventually hang trying to >> > send data because the monitor connection never sinks it. >> > >> > Signed-off-by: Ben Pfaff <b...@nicira.com> >> > --- >> > lib/rconn.c | 16 +++++++++++++++- >> > 1 files changed, 15 insertions(+), 1 deletions(-) >> > >> > diff --git a/lib/rconn.c b/lib/rconn.c >> > index d7bb0be..4922a5c 100644 >> > --- a/lib/rconn.c >> > +++ b/lib/rconn.c >> > @@ -513,8 +513,21 @@ rconn_run(struct rconn *rc) >> > if (rc->vconn) { >> > vconn_run(rc->vconn); >> > } >> > - for (i = 0; i < rc->n_monitors; i++) { >> > + for (i = 0; i < rc->n_monitors; ) { >> > + struct ofpbuf *msg; >> > + int retval; >> > + >> > vconn_run(rc->monitors[i]); >> > + >> > + /* Drain any stray message that came in on the monitor >> > connection. */ >> > + retval = vconn_recv(rc->monitors[i], &msg); >> > + if (!retval) { >> > + ofpbuf_delete(msg); >> > + } else if (retval != EAGAIN) { >> > + close_monitor(rc, i, retval); >> > + continue; >> > + } >> > + i++; >> > } >> > >> > do { >> > @@ -545,6 +558,7 @@ rconn_run_wait(struct rconn *rc) >> > } >> > for (i = 0; i < rc->n_monitors; i++) { >> > vconn_run_wait(rc->monitors[i]); >> > + vconn_recv_wait(rc->monitors[i]); >> > } >> > >> > timeo = timeout(rc); >> > -- >> > 1.7.2.5 >> > >> > _______________________________________________ >> > dev mailing list >> > dev@openvswitch.org >> > http://openvswitch.org/mailman/listinfo/dev _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev