Miroslav Lichvar 007747a984 net: fix SOF_TIMESTAMPING_BIND_PHC to work with multiple sockets
When multiple sockets using the SOF_TIMESTAMPING_BIND_PHC flag received
a packet with a hardware timestamp (e.g. multiple PTP instances in
different PTP domains using the UDPv4/v6 multicast or L2 transport),
the timestamps received on some sockets were corrupted due to repeated
conversion of the same timestamp (by the same or different vclocks).

Fix ptp_convert_timestamp() to not modify the shared skb timestamp
and return the converted timestamp as a ktime_t instead. If the
conversion fails, return 0 to not confuse the application with
timestamps corresponding to an unexpected PHC.

Fixes: d7c088265588 ("net: socket: support hardware timestamp conversion to PHC bound")
Signed-off-by: Miroslav Lichvar <mlichvar@redhat.com>
Cc: Yangbo Lu <yangbo.lu@nxp.com>
Cc: Richard Cochran <richardcochran@gmail.com>
Acked-by: Richard Cochran <richardcochran@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2022-01-06 12:18:08 +00:00
..
2021-11-26 19:45:31 +01:00
2021-11-06 14:36:12 -07:00
2021-11-01 10:09:14 -07:00
2021-12-22 10:11:17 -08:00
2021-11-03 17:00:52 -07:00
2021-11-08 11:49:48 -08:00
2021-12-13 13:18:48 +05:30
2021-11-05 08:42:02 -07:00
2021-11-04 13:56:55 -07:00
2021-11-26 22:54:47 +01:00
2021-12-17 11:46:07 -08:00
2021-11-22 14:58:57 -08:00
2021-11-06 14:36:12 -07:00
2021-11-10 11:36:43 -08:00
2021-10-26 19:12:01 +02:00
2021-11-10 10:56:02 -08:00
2021-10-18 09:29:27 +02:00
2021-11-02 15:58:39 -07:00
2021-12-24 08:58:23 -08:00
2021-11-08 12:07:52 -08:00
2021-11-10 09:07:26 -08:00
2021-11-12 11:44:31 -08:00
2021-12-31 09:22:25 -08:00
2021-12-16 15:02:26 +01:00
2021-12-20 10:23:19 -08:00
2021-12-23 09:22:34 -08:00
2021-11-30 11:41:49 -07:00
2021-12-05 09:13:20 -08:00
2021-11-10 09:41:22 -08:00
2021-12-08 14:53:15 -05:00