On 4/5/21 11:20 AM, Richard Cochran wrote:
On Mon, Apr 05, 2021 at 09:28:44AM -0700, Shannon Nelson wrote:
On 4/4/21 4:41 PM, Richard Cochran wrote:
On Thu, Apr 01, 2021 at 10:56:07AM -0700, Shannon Nelson wrote:
@@ -1150,6 +1232,10 @@ netdev_tx_t ionic_start_xmit(struct sk_buff *skb, struct
net_device *netdev)
return NETDEV_TX_OK;
}
+ if (unlikely(skb_shinfo(skb)->tx_flags & SKBTX_HW_TSTAMP))
+ if (lif->hwstamp_txq)
+ return ionic_start_hwstamp_xmit(skb, netdev);
The check for SKBTX_HW_TSTAMP and hwstamp_txq is good, but I didn't
see hwstamp_txq getting cleared in ionic_lif_hwstamp_set() when the
user turns off Tx time stamping via the SIOCSHWTSTAMP ioctl.
Once the hwstamp queues are up, we leave them there for future use until the
interface is stopped,
Fine, but
assuming that the stack isn't going to send us
SKBTX_HW_STAMP after it has disabled the offload.
you can't assume that. This is an important point, especially
considering the possibiliy of stacked HW time stamp providers. I'm
working on a patch set that will allow the user to switch between MAC
and PHY time stamping at run time.
Thanks,
Richard
Interesting... I doubt that our particular MAC and PHY will ever be
separate, but it makes sense to watch for this in the general case. I've
got an update coming for this.
Thanks,
sln