* [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 an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.