diff options
author | Mark Brown <broonie@kernel.org> | 2021-10-29 22:00:00 +0100 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2021-10-29 22:00:00 +0100 |
commit | 318a54c0ee4aaa3bfd69fdf505588510c7672c0c (patch) | |
tree | fcd342658639851179ab88c0eb317e83b586eb71 /drivers/net/ethernet/intel/ice/ice_ptp.c | |
parent | 8e14329645bc7d722e1ec913025b54199fafaee3 (diff) | |
parent | 6195eb15f6d60dd92d1644dc11f1c1c2e84ebfeb (diff) |
Merge remote-tracking branch 'asoc/for-5.16' into asoc-next
Diffstat (limited to 'drivers/net/ethernet/intel/ice/ice_ptp.c')
-rw-r--r-- | drivers/net/ethernet/intel/ice/ice_ptp.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/drivers/net/ethernet/intel/ice/ice_ptp.c b/drivers/net/ethernet/intel/ice/ice_ptp.c index 05cc5870e4ef..80380aed8882 100644 --- a/drivers/net/ethernet/intel/ice/ice_ptp.c +++ b/drivers/net/ethernet/intel/ice/ice_ptp.c @@ -1313,22 +1313,21 @@ ice_ptp_flush_tx_tracker(struct ice_pf *pf, struct ice_ptp_tx *tx) { u8 idx; - spin_lock(&tx->lock); - for (idx = 0; idx < tx->len; idx++) { u8 phy_idx = idx + tx->quad_offset; - /* Clear any potential residual timestamp in the PHY block */ - if (!pf->hw.reset_ongoing) - ice_clear_phy_tstamp(&pf->hw, tx->quad, phy_idx); - + spin_lock(&tx->lock); if (tx->tstamps[idx].skb) { dev_kfree_skb_any(tx->tstamps[idx].skb); tx->tstamps[idx].skb = NULL; } - } + clear_bit(idx, tx->in_use); + spin_unlock(&tx->lock); - spin_unlock(&tx->lock); + /* Clear any potential residual timestamp in the PHY block */ + if (!pf->hw.reset_ongoing) + ice_clear_phy_tstamp(&pf->hw, tx->quad, phy_idx); + } } /** |