[ovs-dev] [cfm 2/3] cfm: Warn when delayed sending CCMs.
Ethan Jackson
ethan at nicira.com
Wed Jun 20 23:46:53 UTC 2012
Thanks for turning around the review so quickly, I made the tweaks
mentioned below and will merge this.
Ethan
On Wed, Jun 20, 2012 at 4:39 PM, Ben Pfaff <blp at nicira.com> wrote:
> On Wed, Jun 20, 2012 at 04:25:08PM -0700, Ethan Jackson wrote:
>> We've recently seen problems where OVS can get delayed sending CCM
>> probes by several seconds. This can cause tunnels to flap, and
>> generally wreak havoc. It's easy to detect when this is happening,
>> so minimally, warning should be helpful to those debugging
>> problems.
>>
>> Signed-off-by: Ethan Jackson <ethan at nicira.com>
>
>> @@ -118,6 +118,7 @@ struct cfm {
>> received. */
>> int health_interval; /* Number of fault_intervals since health was
>> recomputed. */
>> + long long int last_tx; /* Last CCM transmission time. */
>>
>> };
>
> Can we drop the extra blank line up there?
>
>> @@ -466,6 +468,16 @@ cfm_compose_ccm(struct cfm *cfm, struct ofpbuf *packet,
>> if (hmap_is_empty(&cfm->remote_mps)) {
>> ccm->flags |= CCM_RDI_MASK;
>> }
>> +
>> + if (cfm->last_tx) {
>
> There's a double space after "=":
>> + long long int delay = time_msec() - cfm->last_tx;
>> + if (delay > (cfm->ccm_interval_ms * 3 / 2)) {
>
> "high" is a little funny for a duration, below. Maybe "long" or even
> "unexpectedly long"?
>
>> + VLOG_WARN("%s: high delay of %lldms (expected %dms) sending CCM"
>> + " seq %"PRIu32, cfm->name, delay, cfm->ccm_interval_ms,
>> + cfm->seq);
>> + }
>> + }
>> + cfm->last_tx = time_msec();
>> }
>
> Thanks! This should be helpful.
More information about the dev
mailing list