e1000e: drop stats lock

the stats lock is left over from e1000, e1000e no longer
has the adjust tbi stats function that required the addition
of the stats lock to begin with.

adding a mutex to acquire_swflag helped catch this one too.

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Jesse Brandeburg 2008-10-02 16:33:35 -07:00 committed by Linus Torvalds
parent 23033fad5b
commit 4fa7553a07
2 changed files with 0 additions and 19 deletions

View File

@ -257,7 +257,6 @@ struct e1000_adapter {
struct net_device *netdev; struct net_device *netdev;
struct pci_dev *pdev; struct pci_dev *pdev;
struct net_device_stats net_stats; struct net_device_stats net_stats;
spinlock_t stats_lock; /* prevent concurrent stats updates */
/* structs defined in e1000_hw.h */ /* structs defined in e1000_hw.h */
struct e1000_hw hw; struct e1000_hw hw;

View File

@ -2600,8 +2600,6 @@ static int __devinit e1000_sw_init(struct e1000_adapter *adapter)
/* Explicitly disable IRQ since the NIC can be in any state. */ /* Explicitly disable IRQ since the NIC can be in any state. */
e1000_irq_disable(adapter); e1000_irq_disable(adapter);
spin_lock_init(&adapter->stats_lock);
set_bit(__E1000_DOWN, &adapter->state); set_bit(__E1000_DOWN, &adapter->state);
return 0; return 0;
@ -2953,7 +2951,6 @@ void e1000e_update_stats(struct e1000_adapter *adapter)
{ {
struct e1000_hw *hw = &adapter->hw; struct e1000_hw *hw = &adapter->hw;
struct pci_dev *pdev = adapter->pdev; struct pci_dev *pdev = adapter->pdev;
unsigned long irq_flags;
/* /*
* Prevent stats update while adapter is being reset, or if the pci * Prevent stats update while adapter is being reset, or if the pci
@ -2964,14 +2961,6 @@ void e1000e_update_stats(struct e1000_adapter *adapter)
if (pci_channel_offline(pdev)) if (pci_channel_offline(pdev))
return; return;
spin_lock_irqsave(&adapter->stats_lock, irq_flags);
/*
* these counters are modified from e1000_adjust_tbi_stats,
* called from the interrupt context, so they must only
* be written while holding adapter->stats_lock
*/
adapter->stats.crcerrs += er32(CRCERRS); adapter->stats.crcerrs += er32(CRCERRS);
adapter->stats.gprc += er32(GPRC); adapter->stats.gprc += er32(GPRC);
adapter->stats.gorc += er32(GORCL); adapter->stats.gorc += er32(GORCL);
@ -3046,8 +3035,6 @@ void e1000e_update_stats(struct e1000_adapter *adapter)
adapter->stats.mgptc += er32(MGTPTC); adapter->stats.mgptc += er32(MGTPTC);
adapter->stats.mgprc += er32(MGTPRC); adapter->stats.mgprc += er32(MGTPRC);
adapter->stats.mgpdc += er32(MGTPDC); adapter->stats.mgpdc += er32(MGTPDC);
spin_unlock_irqrestore(&adapter->stats_lock, irq_flags);
} }
/** /**
@ -3059,9 +3046,6 @@ static void e1000_phy_read_status(struct e1000_adapter *adapter)
struct e1000_hw *hw = &adapter->hw; struct e1000_hw *hw = &adapter->hw;
struct e1000_phy_regs *phy = &adapter->phy_regs; struct e1000_phy_regs *phy = &adapter->phy_regs;
int ret_val; int ret_val;
unsigned long irq_flags;
spin_lock_irqsave(&adapter->stats_lock, irq_flags);
if ((er32(STATUS) & E1000_STATUS_LU) && if ((er32(STATUS) & E1000_STATUS_LU) &&
(adapter->hw.phy.media_type == e1000_media_type_copper)) { (adapter->hw.phy.media_type == e1000_media_type_copper)) {
@ -3092,8 +3076,6 @@ static void e1000_phy_read_status(struct e1000_adapter *adapter)
phy->stat1000 = 0; phy->stat1000 = 0;
phy->estatus = (ESTATUS_1000_TFULL | ESTATUS_1000_THALF); phy->estatus = (ESTATUS_1000_TFULL | ESTATUS_1000_THALF);
} }
spin_unlock_irqrestore(&adapter->stats_lock, irq_flags);
} }
static void e1000_print_link_info(struct e1000_adapter *adapter) static void e1000_print_link_info(struct e1000_adapter *adapter)