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