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