Yes, let's discuss it on Monday on a board maybe. Also, I have another patch that changes the "type_run()" to call "push_all_stats()" every 800ms.
Sorry for managing these patches so badly. After our discussion, I think I'll repost all the three patches (bfd_decay, bfd_forwarding_if_rx, pull interface stats faster) together. Thanks, On Fri, Aug 16, 2013 at 8:10 PM, Ethan Jackson <et...@nicira.com> wrote: > > I think there can be jitters. Since we do not update the rx_detect_time > at > > the exact time instant when it timeout, it is possible that "forwarding" > > flag becomes false when "bfd/show" is called at "time_msec() > > > rx_detect_time" time. > > I'm not sure I understand. Seems to me like it should work, but I > must be missing something. Let's discuss it on Monday in person. > > Ethan > > > > > > >> > >> > + if (diff < 0) { > >> > + VLOG_WARN("rx_packets count is smaller than last time."); > >> > + } > >> > + bfd->rx_packets = rx_packets; > >> > + bfd->has_rx = (diff > 0); > >> > + incr = bfd_rx_interval(bfd) * bfd->mult; > >> > + bfd->rx_detect_time = (incr > 2000 ? incr : 2000) + time_msec(); > >> > >> This would be easier to read as MAX(incr, 2000). Also it deserves a > >> comment explaining why we're setting 2000 as the minimum > >> rx_detect_time. That number seems awfully high to me at any rate, I'd > >> feel better if we set it to 1000, and made (in a separate patch) made > >> ofproto-dpif pull stats from the datapath at least once every 800ms so > >> we have time to grab our stats and update the bfd module. > > > > > > > > I'll add the comment. > > > > I'll adjust accordingly and send another patch for changing the pull > stats > > rate in ofproto-dpif. >
_______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev