netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
To: davem@davemloft.net
Cc: Jacob Keller <jacob.e.keller@intel.com>,
	netdev@vger.kernel.org, nhorman@redhat.com, sassmann@redhat.com,
	jogreene@redhat.com, Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Subject: [net-next 09/17] i40e: check I40E_FLAG_PTP before handling Tx or Rx timestamps
Date: Thu, 15 Jan 2015 04:19:20 -0800	[thread overview]
Message-ID: <1421324368-6860-10-git-send-email-jeffrey.t.kirsher@intel.com> (raw)
In-Reply-To: <1421324368-6860-1-git-send-email-jeffrey.t.kirsher@intel.com>

From: Jacob Keller <jacob.e.keller@intel.com>

We should not be doing Tx or Rx timestamps if we do not have PTP
enabled. Add checks to ensure that we don't attempt to handle any PTP
related timestamping code if we have not enabled PTP on that PF.

Change-ID: I4335942ae2d5c5f91abfdbeeea02bcace49e7677
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
 drivers/net/ethernet/intel/i40e/i40e_ptp.c  | 9 ++++++++-
 drivers/net/ethernet/intel/i40e/i40e_txrx.c | 3 +++
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/intel/i40e/i40e_ptp.c b/drivers/net/ethernet/intel/i40e/i40e_ptp.c
index 6d1ec92..a152878 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_ptp.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_ptp.c
@@ -305,6 +305,13 @@ void i40e_ptp_tx_hwtstamp(struct i40e_pf *pf)
 	u32 hi, lo;
 	u64 ns;
 
+	if (!(pf->flags & I40E_FLAG_PTP) || !pf->ptp_tx)
+		return;
+
+	/* don't attempt to timestamp if we don't have an skb */
+	if (!pf->ptp_tx_skb)
+		return;
+
 	lo = rd32(hw, I40E_PRTTSYN_TXTIME_L);
 	hi = rd32(hw, I40E_PRTTSYN_TXTIME_H);
 
@@ -338,7 +345,7 @@ void i40e_ptp_rx_hwtstamp(struct i40e_pf *pf, struct sk_buff *skb, u8 index)
 	/* Since we cannot turn off the Rx timestamp logic if the device is
 	 * doing Tx timestamping, check if Rx timestamping is configured.
 	 */
-	if (!pf->ptp_rx)
+	if (!(pf->flags & I40E_FLAG_PTP) || !pf->ptp_rx)
 		return;
 
 	hw = &pf->hw;
diff --git a/drivers/net/ethernet/intel/i40e/i40e_txrx.c b/drivers/net/ethernet/intel/i40e/i40e_txrx.c
index bb86390..420d662 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_txrx.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_txrx.c
@@ -1939,6 +1939,9 @@ static int i40e_tsyn(struct i40e_ring *tx_ring, struct sk_buff *skb,
 	 * we are not already transmitting a packet to be timestamped
 	 */
 	pf = i40e_netdev_to_pf(tx_ring->netdev);
+	if (!(pf->flags & I40E_FLAG_PTP))
+		return 0;
+
 	if (pf->ptp_tx &&
 	    !test_and_set_bit_lock(__I40E_PTP_TX_IN_PROGRESS, &pf->state)) {
 		skb_shinfo(skb)->tx_flags |= SKBTX_IN_PROGRESS;
-- 
1.9.3

  parent reply	other threads:[~2015-01-15 12:19 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-15 12:19 [net-next 00/17][pull request] Intel Wired LAN Driver Updates 2015-01-15 Jeff Kirsher
2015-01-15 12:19 ` [net-next 01/17] i40e/i40evf: AdminQ updates ww36 Jeff Kirsher
2015-01-15 12:19 ` [net-next 02/17] i40e/i40evf: Increase ASQ timeout Jeff Kirsher
2015-01-15 12:19 ` [net-next 03/17] i40e: fix proc/int descriptions Jeff Kirsher
2015-01-15 12:19 ` [net-next 04/17] i40e: don't give up on DCB error after reset Jeff Kirsher
2015-01-15 12:19 ` [net-next 05/17] i40e: Add define for interrupt name string len Jeff Kirsher
2015-01-15 12:19 ` [net-next 06/17] i40e: Dump Stats string removed from debugfs help command Jeff Kirsher
2015-01-15 12:19 ` [net-next 07/17] i40e/i40evf: Bump i40e/i40evf versions Jeff Kirsher
2015-01-15 12:19 ` [net-next 08/17] i40e: only enable PTP interrupt cause if PTP is enabled Jeff Kirsher
2015-01-15 12:19 ` Jeff Kirsher [this message]
2015-01-15 12:19 ` [net-next 10/17] i40e: clean up PTP log messages Jeff Kirsher
2015-01-15 12:34   ` David Laight
2015-01-15 15:01     ` Nelson, Shannon
2015-01-15 20:38       ` David Miller
2015-01-15 22:44         ` Nelson, Shannon
2015-01-15 23:12           ` David Miller
2015-01-15 12:19 ` [net-next 11/17] i40e: Issue "Stop LLDP" command for firmware older than v4.3 Jeff Kirsher
2015-01-15 12:19 ` [net-next 12/17] i40e: add more struct size checks Jeff Kirsher
2015-01-15 12:19 ` [net-next 13/17] i40e: AQ API updates for new commands Jeff Kirsher
2015-01-15 17:14   ` Or Gerlitz
2015-01-15 17:19     ` Nelson, Shannon
2015-01-15 18:04       ` Or Gerlitz
2015-01-15 12:19 ` [net-next 14/17] i40e: use same check for Rx hang as for Rx timestamps Jeff Kirsher
2015-01-15 12:19 ` [net-next 15/17] i40e: when Rx timestamps disabled set specific mode Jeff Kirsher
2015-01-15 12:19 ` [net-next 16/17] i40e: Support for NPAR iSCSI partition with DCB Jeff Kirsher
2015-01-15 17:11   ` Or Gerlitz
2015-01-15 12:19 ` [net-next 17/17] i40e/i40evf: Bump i40e and i40evf versions Jeff Kirsher

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1421324368-6860-10-git-send-email-jeffrey.t.kirsher@intel.com \
    --to=jeffrey.t.kirsher@intel.com \
    --cc=davem@davemloft.net \
    --cc=jacob.e.keller@intel.com \
    --cc=jogreene@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=nhorman@redhat.com \
    --cc=sassmann@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).