On 2/4/2020 2:34 PM, Erik Hons wrote:
> This fixes an issue with free running clocks. When the master clock id
> changes the measured master/local ratio should be reset. If it isn't,
> and the local clock becomes master, then the last measured ratio to
> the old master continues to be used in peer delay calculations. If a
> bad master/local ration calculation triggers this state change the
> port can get "stuck" in not "asCapable" mode.
> 

Seems fairly straight forward to me.

> Signed-off-by: Erik Hons <erik.h...@ni.com>
> ---
>  clock.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/clock.c b/clock.c
> index 146576a..a48656c 100644
> --- a/clock.c
> +++ b/clock.c
> @@ -1774,6 +1774,7 @@ static void handle_state_decision_event(struct clock *c)
>                       tsproc_set_delay(c->tsproc, c->initial_delay);
>               c->ingress_ts = tmv_zero();
>               c->path_delay = c->initial_delay;
> +             c->master_local_rr = 1.0;
>               c->nrr = 1.0;
>               fresh_best = 1;
>       }
> 


_______________________________________________
Linuxptp-devel mailing list
Linuxptp-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxptp-devel

Reply via email to