On Mon, Oct 11, 2021 at 06:40:31AM -0700, Richard Cochran wrote:
> According to IEEE 1588, each destination should have its own, unique
> message sequence with respect to the sequenceId field.  The current
> code will generate skips in the number sequence in the presence of
> unicast clients.  Fix the issue by giving each client its own
> sequence of Sync messages.

> @@ -1557,7 +1557,7 @@ int port_tx_sync(struct port *p, struct address *dst)
>       msg->header.messageLength      = sizeof(struct sync_msg);
>       msg->header.domainNumber       = clock_domain_number(p->clock);
>       msg->header.sourcePortIdentity = p->portIdentity;
> -     msg->header.sequenceId         = p->seqnum.sync++;
> +     msg->header.sequenceId         = sequence_id;
>       msg->header.control            = CTL_SYNC;
>       msg->header.logMessageInterval = p->logSyncInterval;

There is a missing change in this function for the follow up message.
It needs to use the same sequence ID.

Other than that, both patches look good to me.

Thanks,

-- 
Miroslav Lichvar



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

Reply via email to