[dpdk-dev] [PATCH] examples/ptpclient: fix delay request message

Harman Kalra hkalra at marvell.com
Thu Jul 25 16:21:35 CEST 2019


Observed an issue with the length and domain number of the
delay request message sent out by the client. Due to which delay
response from master was not received.

Fixes: ab129e9065a5 ("examples/ptpclient: add minimal PTP client")

Change-Id: I1031fa630e97709818c4b440e1e5fdc31205ab9c
Signed-off-by: Harman Kalra <hkalra at marvell.com>
---
 examples/ptpclient/ptpclient.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/examples/ptpclient/ptpclient.c b/examples/ptpclient/ptpclient.c
index 95b0c176e..be101d7ab 100644
--- a/examples/ptpclient/ptpclient.c
+++ b/examples/ptpclient/ptpclient.c
@@ -233,7 +233,11 @@ port_init(uint16_t port, struct rte_mempool *mbuf_pool)
 		return retval;
 
 	/* Enable timesync timestamping for the Ethernet device */
-	rte_eth_timesync_enable(port);
+	retval = rte_eth_timesync_enable(port);
+	if (retval < 0) {
+		printf("timesync enable failed: %d\n", retval);
+		return retval;
+	}
 
 	/* Enable RX in promiscuous mode for the Ethernet device. */
 	rte_eth_promiscuous_enable(port);
@@ -413,6 +417,9 @@ parse_fup(struct ptpv2_data_slave_ordinary *ptp_data)
 		ptp_msg->delay_req.hdr.ver = 2;
 		ptp_msg->delay_req.hdr.control = 1;
 		ptp_msg->delay_req.hdr.log_message_interval = 127;
+		ptp_msg->delay_req.hdr.message_length =
+			htons(sizeof(struct delay_req_msg));
+		ptp_msg->delay_req.hdr.domain_number = ptp_hdr->domain_number;
 
 		/* Set up clock id. */
 		client_clkid =
-- 
2.18.0



More information about the dev mailing list