netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/3] igb: igb should not flag lltx
@ 2009-01-21  8:33 Jeff Kirsher
  2009-01-21  8:33 ` [PATCH 2/3] igb: make certain to power on optics for 82576 fiber nics Jeff Kirsher
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Jeff Kirsher @ 2009-01-21  8:33 UTC (permalink / raw)
  To: davem; +Cc: netdev, jeff, Alexander Duyck, Jeff Kirsher

From: Alexander Duyck <alexander.h.duyck@intel.com>

Igb has flags enabling lltx but this is a holdover from the earlier e1000
driver which the igb driver was based off of.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---

 drivers/net/igb/igb_main.c |    1 -
 1 files changed, 0 insertions(+), 1 deletions(-)

diff --git a/drivers/net/igb/igb_main.c b/drivers/net/igb/igb_main.c
index b82b0fb..e783189 100644
--- a/drivers/net/igb/igb_main.c
+++ b/drivers/net/igb/igb_main.c
@@ -1200,7 +1200,6 @@ static int __devinit igb_probe(struct pci_dev *pdev,
 	if (pci_using_dac)
 		netdev->features |= NETIF_F_HIGHDMA;
 
-	netdev->features |= NETIF_F_LLTX;
 	adapter->en_mng_pt = igb_enable_mng_pass_thru(&adapter->hw);
 
 	/* before reading the NVM, reset the controller to put the device in a


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 2/3] igb: make certain to power on optics for 82576 fiber nics
  2009-01-21  8:33 [PATCH 1/3] igb: igb should not flag lltx Jeff Kirsher
@ 2009-01-21  8:33 ` Jeff Kirsher
  2009-01-21 22:43   ` David Miller
  2009-01-21  8:34 ` [PATCH 3/3] e1000: drop lltx, remove unnecessary lock Jeff Kirsher
  2009-01-21 22:42 ` [PATCH 1/3] igb: igb should not flag lltx David Miller
  2 siblings, 1 reply; 8+ messages in thread
From: Jeff Kirsher @ 2009-01-21  8:33 UTC (permalink / raw)
  To: davem; +Cc: netdev, jeff, Alexander Duyck, Jeff Kirsher

From: Alexander Duyck <alexander.h.duyck@intel.com>

It appears that a step was missed in the initialization of 82576 fiber nics
that resulted in it not powering on the optics.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---

 drivers/net/igb/e1000_82575.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/drivers/net/igb/e1000_82575.c b/drivers/net/igb/e1000_82575.c
index f5e2e72..9b367ba 100644
--- a/drivers/net/igb/e1000_82575.c
+++ b/drivers/net/igb/e1000_82575.c
@@ -1103,6 +1103,13 @@ static s32 igb_setup_fiber_serdes_link_82575(struct e1000_hw *hw)
 	       E1000_CTRL_SWDPIN1;
 	wr32(E1000_CTRL, reg);
 
+	/* Power on phy for 82576 fiber adapters */
+	if (hw->mac.type == e1000_82576) {
+		reg = rd32(E1000_CTRL_EXT);
+		reg &= ~E1000_CTRL_EXT_SDP7_DATA;
+		wr32(E1000_CTRL_EXT, reg);
+	}
+
 	/* Set switch control to serdes energy detect */
 	reg = rd32(E1000_CONNSW);
 	reg |= E1000_CONNSW_ENRGSRC;


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 3/3] e1000: drop lltx, remove unnecessary lock
  2009-01-21  8:33 [PATCH 1/3] igb: igb should not flag lltx Jeff Kirsher
  2009-01-21  8:33 ` [PATCH 2/3] igb: make certain to power on optics for 82576 fiber nics Jeff Kirsher
@ 2009-01-21  8:34 ` Jeff Kirsher
  2009-01-21 22:34   ` Herbert Xu
  2009-01-21 22:43   ` David Miller
  2009-01-21 22:42 ` [PATCH 1/3] igb: igb should not flag lltx David Miller
  2 siblings, 2 replies; 8+ messages in thread
From: Jeff Kirsher @ 2009-01-21  8:34 UTC (permalink / raw)
  To: davem; +Cc: netdev, jeff, Jeff Kirsher

LLTX is deprecated, don't use it.  This completes the removal of LLTX from
the Intel Network drivers.

Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---

 drivers/net/e1000/e1000.h      |    2 --
 drivers/net/e1000/e1000_main.c |   29 +++--------------------------
 2 files changed, 3 insertions(+), 28 deletions(-)

diff --git a/drivers/net/e1000/e1000.h b/drivers/net/e1000/e1000.h
index f5581de..e9a416f 100644
--- a/drivers/net/e1000/e1000.h
+++ b/drivers/net/e1000/e1000.h
@@ -182,7 +182,6 @@ struct e1000_tx_ring {
 	/* array of buffer information structs */
 	struct e1000_buffer *buffer_info;
 
-	spinlock_t tx_lock;
 	u16 tdh;
 	u16 tdt;
 	bool last_tx_tso;
@@ -238,7 +237,6 @@ struct e1000_adapter {
 	u16 link_speed;
 	u16 link_duplex;
 	spinlock_t stats_lock;
-	spinlock_t tx_queue_lock;
 	unsigned int total_tx_bytes;
 	unsigned int total_tx_packets;
 	unsigned int total_rx_bytes;
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
index 26474c9..2e17ff4 100644
--- a/drivers/net/e1000/e1000_main.c
+++ b/drivers/net/e1000/e1000_main.c
@@ -31,7 +31,7 @@
 
 char e1000_driver_name[] = "e1000";
 static char e1000_driver_string[] = "Intel(R) PRO/1000 Network Driver";
-#define DRV_VERSION "7.3.20-k3-NAPI"
+#define DRV_VERSION "7.3.21-k2-NAPI"
 const char e1000_driver_version[] = DRV_VERSION;
 static const char e1000_copyright[] = "Copyright (c) 1999-2006 Intel Corporation.";
 
@@ -1048,8 +1048,6 @@ static int __devinit e1000_probe(struct pci_dev *pdev,
 	if (pci_using_dac)
 		netdev->features |= NETIF_F_HIGHDMA;
 
-	netdev->features |= NETIF_F_LLTX;
-
 	netdev->vlan_features |= NETIF_F_TSO;
 	netdev->vlan_features |= NETIF_F_TSO6;
 	netdev->vlan_features |= NETIF_F_HW_CSUM;
@@ -1368,8 +1366,6 @@ static int __devinit e1000_sw_init(struct e1000_adapter *adapter)
 		return -ENOMEM;
 	}
 
-	spin_lock_init(&adapter->tx_queue_lock);
-
 	/* Explicitly disable IRQ since the NIC can be in any state. */
 	e1000_irq_disable(adapter);
 
@@ -1624,7 +1620,6 @@ setup_tx_desc_die:
 
 	txdr->next_to_use = 0;
 	txdr->next_to_clean = 0;
-	spin_lock_init(&txdr->tx_lock);
 
 	return 0;
 }
@@ -3185,7 +3180,6 @@ static int e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
 	unsigned int max_txd_pwr = E1000_MAX_TXD_PWR;
 	unsigned int tx_flags = 0;
 	unsigned int len = skb->len - skb->data_len;
-	unsigned long flags;
 	unsigned int nr_frags;
 	unsigned int mss;
 	int count = 0;
@@ -3290,22 +3284,15 @@ static int e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
 	    (hw->mac_type == e1000_82573))
 		e1000_transfer_dhcp_info(adapter, skb);
 
-	if (!spin_trylock_irqsave(&tx_ring->tx_lock, flags))
-		/* Collision - tell upper layer to requeue */
-		return NETDEV_TX_LOCKED;
-
 	/* need: count + 2 desc gap to keep tail from touching
 	 * head, otherwise try next time */
-	if (unlikely(e1000_maybe_stop_tx(netdev, tx_ring, count + 2))) {
-		spin_unlock_irqrestore(&tx_ring->tx_lock, flags);
+	if (unlikely(e1000_maybe_stop_tx(netdev, tx_ring, count + 2)))
 		return NETDEV_TX_BUSY;
-	}
 
 	if (unlikely(hw->mac_type == e1000_82547)) {
 		if (unlikely(e1000_82547_fifo_workaround(adapter, skb))) {
 			netif_stop_queue(netdev);
 			mod_timer(&adapter->tx_fifo_stall_timer, jiffies + 1);
-			spin_unlock_irqrestore(&tx_ring->tx_lock, flags);
 			return NETDEV_TX_BUSY;
 		}
 	}
@@ -3320,7 +3307,6 @@ static int e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
 	tso = e1000_tso(adapter, tx_ring, skb);
 	if (tso < 0) {
 		dev_kfree_skb_any(skb);
-		spin_unlock_irqrestore(&tx_ring->tx_lock, flags);
 		return NETDEV_TX_OK;
 	}
 
@@ -3345,7 +3331,6 @@ static int e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
 	/* Make sure there is space in the ring for the next send. */
 	e1000_maybe_stop_tx(netdev, tx_ring, MAX_SKB_FRAGS + 2);
 
-	spin_unlock_irqrestore(&tx_ring->tx_lock, flags);
 	return NETDEV_TX_OK;
 }
 
@@ -3773,15 +3758,7 @@ static int e1000_clean(struct napi_struct *napi, int budget)
 
 	adapter = netdev_priv(poll_dev);
 
-	/* e1000_clean is called per-cpu.  This lock protects
-	 * tx_ring[0] from being cleaned by multiple cpus
-	 * simultaneously.  A failure obtaining the lock means
-	 * tx_ring[0] is currently being cleaned anyway. */
-	if (spin_trylock(&adapter->tx_queue_lock)) {
-		tx_cleaned = e1000_clean_tx_irq(adapter,
-						&adapter->tx_ring[0]);
-		spin_unlock(&adapter->tx_queue_lock);
-	}
+	tx_cleaned = e1000_clean_tx_irq(adapter, &adapter->tx_ring[0]);
 
 	adapter->clean_rx(adapter, &adapter->rx_ring[0],
 	                  &work_done, budget);


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH 3/3] e1000: drop lltx, remove unnecessary lock
  2009-01-21  8:34 ` [PATCH 3/3] e1000: drop lltx, remove unnecessary lock Jeff Kirsher
@ 2009-01-21 22:34   ` Herbert Xu
  2009-01-21 22:40     ` David Miller
  2009-01-21 22:43   ` David Miller
  1 sibling, 1 reply; 8+ messages in thread
From: Herbert Xu @ 2009-01-21 22:34 UTC (permalink / raw)
  To: Jeff Kirsher; +Cc: davem, netdev, jeff, jeffrey.t.kirsher

Jeff Kirsher <jeffrey.t.kirsher@intel.com> wrote:
> LLTX is deprecated, don't use it.  This completes the removal of LLTX from
> the Intel Network drivers.
> 
> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>

Awesome work Jeff :)
-- 
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 3/3] e1000: drop lltx, remove unnecessary lock
  2009-01-21 22:34   ` Herbert Xu
@ 2009-01-21 22:40     ` David Miller
  0 siblings, 0 replies; 8+ messages in thread
From: David Miller @ 2009-01-21 22:40 UTC (permalink / raw)
  To: herbert; +Cc: jeffrey.t.kirsher, netdev, jeff

From: Herbert Xu <herbert@gondor.apana.org.au>
Date: Thu, 22 Jan 2009 09:34:18 +1100

> Jeff Kirsher <jeffrey.t.kirsher@intel.com> wrote:
> > LLTX is deprecated, don't use it.  This completes the removal of LLTX from
> > the Intel Network drivers.
> > 
> > Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
> 
> Awesome work Jeff :)

Indeed, I'll be applying these anti-LLTX patches for sure :)

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 1/3] igb: igb should not flag lltx
  2009-01-21  8:33 [PATCH 1/3] igb: igb should not flag lltx Jeff Kirsher
  2009-01-21  8:33 ` [PATCH 2/3] igb: make certain to power on optics for 82576 fiber nics Jeff Kirsher
  2009-01-21  8:34 ` [PATCH 3/3] e1000: drop lltx, remove unnecessary lock Jeff Kirsher
@ 2009-01-21 22:42 ` David Miller
  2 siblings, 0 replies; 8+ messages in thread
From: David Miller @ 2009-01-21 22:42 UTC (permalink / raw)
  To: jeffrey.t.kirsher; +Cc: netdev, jeff, alexander.h.duyck

From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Wed, 21 Jan 2009 00:33:29 -0800

> Igb has flags enabling lltx but this is a holdover from the earlier e1000
> driver which the igb driver was based off of.
> 
> Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>

Applied.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 2/3] igb: make certain to power on optics for 82576 fiber nics
  2009-01-21  8:33 ` [PATCH 2/3] igb: make certain to power on optics for 82576 fiber nics Jeff Kirsher
@ 2009-01-21 22:43   ` David Miller
  0 siblings, 0 replies; 8+ messages in thread
From: David Miller @ 2009-01-21 22:43 UTC (permalink / raw)
  To: jeffrey.t.kirsher; +Cc: netdev, jeff, alexander.h.duyck

From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Wed, 21 Jan 2009 00:33:48 -0800

> It appears that a step was missed in the initialization of 82576 fiber nics
> that resulted in it not powering on the optics.
> 
> Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>

Applied.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 3/3] e1000: drop lltx, remove unnecessary lock
  2009-01-21  8:34 ` [PATCH 3/3] e1000: drop lltx, remove unnecessary lock Jeff Kirsher
  2009-01-21 22:34   ` Herbert Xu
@ 2009-01-21 22:43   ` David Miller
  1 sibling, 0 replies; 8+ messages in thread
From: David Miller @ 2009-01-21 22:43 UTC (permalink / raw)
  To: jeffrey.t.kirsher; +Cc: netdev, jeff

From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Wed, 21 Jan 2009 00:34:07 -0800

> LLTX is deprecated, don't use it.  This completes the removal of LLTX from
> the Intel Network drivers.
> 
> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>

Applied.

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2009-01-21 22:43 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-21  8:33 [PATCH 1/3] igb: igb should not flag lltx Jeff Kirsher
2009-01-21  8:33 ` [PATCH 2/3] igb: make certain to power on optics for 82576 fiber nics Jeff Kirsher
2009-01-21 22:43   ` David Miller
2009-01-21  8:34 ` [PATCH 3/3] e1000: drop lltx, remove unnecessary lock Jeff Kirsher
2009-01-21 22:34   ` Herbert Xu
2009-01-21 22:40     ` David Miller
2009-01-21 22:43   ` David Miller
2009-01-21 22:42 ` [PATCH 1/3] igb: igb should not flag lltx David Miller

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).