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