On Tue, Oct 06, 2020 at 03:56:31PM +0200, Kurt Kanzenbach wrote:
On Tue Oct 06 2020, Vladimir Oltean wrote:
quoted
On Tue, Oct 06, 2020 at 03:30:36PM +0200, Kurt Kanzenbach wrote:
quoted
That's the point. The user (or anybody else) cannot disable hardware
stamping, because it is always performed. So, why should it be allowed
to disable it even when it cannot be disabled?
Because your driver's user can attach a PTP PHY to your switch port, and
the network stack doesn't support multiple TX timestamps attached to the
same skb. They'll want the TX timestamp from the PHY and not from your
switch.
Yeah, sure. That use case makes sense. What's the problem exactly?
The SO_TIMESTAMPING / SO_TIMESTAMPNS cmsg socket API simply doesn't have
any sort of identification for a hardware TX timestamp (where it came
from). So when you'll poll for TX timestamps, you'll receive a TX
timestamp from the PHY and another one from the switch, and those will
be in a race with one another, so you won't know which one is which.