Yes, it works for me.

thanks

luigi

Il giorno mar 23 mar 2021 alle ore 15:06 Richard Cochran <
richardcoch...@gmail.com> ha scritto:

> On Mon, Mar 15, 2021 at 12:38:58PM +0100, Luigi 'Comio' Mantellini wrote:
> > Inside port_synchronize() I noticed this:
> >
> > case SERVO_LOCKED:
> >     port_dispatch(p, EV_MASTER_CLOCK_SELECTED, 0);
> >     break;
> > case SERVO_LOCKED_STABLE:
> >     message_interval_request(p, last_state, sync_interval);
> >     break;
> >
> > Supposing to have the port X as SLAVE with "SERVO_LOCKED_STABLE" state,
> > after a while I disable the ingoing traffic (SYNC/ANNUNCE) to the port X,
> > switching to another port Y still keeping the SERVO_LOCKED_STABLE
> > condition. The check_offset_threshold(), called by sample_sample(),
> should
> > always return "1' (true) because the s->curr_offset_values == 0  (and it
> is
> > fixed to servo_num_offset_values only in SERV_UNLOCKED and SERVO_JUMP
> > conditions).
> >
> > In these conditions the SERVO_LOCKED will not happen and the
> > port_dispatach(p, EV_MASTER_CLOCK_SELECTED, 0) should never be called,
> > resulting in a forever "UNCALIBRATED" condition.
>
> Does changing port_synchronize() to this fix the issue for you?
>
>         case SERVO_LOCKED_STABLE:
>                 message_interval_request(p, last_state, sync_interval);
> +               port_dispatch(p, EV_MASTER_CLOCK_SELECTED, 0);
>                 break;
>
> Thanks,
> Richard
>


-- 
*Luigi 'Comio' Mantellini*
My Professional Profile <http://www.linkedin.com/in/comio>

*"UNIX is very simple, it just needs a genius to understand its
simplicity." [cit.]*
_______________________________________________
Linuxptp-devel mailing list
Linuxptp-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxptp-devel

Reply via email to