diff options
author | Benjamin Poirier <bpoirier@suse.de> | 2012-04-06 03:20:21 -0400 |
---|---|---|
committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2012-04-17 18:40:34 -0400 |
commit | 34948a947d1a576c10afee6d14792fd237549577 (patch) | |
tree | 545fabb4a809d100d7f569a527ab0adb6ae8e9cd /drivers/net | |
parent | a99ff7d0123b19ecad3b589480b6542716ab6b52 (diff) |
ixgbe: add missing rtnl_lock in PM resume path
Upon resume from standby, ixgbe may trigger the ASSERT_RTNL() in
netif_set_real_num_tx_queues(). The call stack is:
netif_set_real_num_tx_queues
ixgbe_set_num_queues
ixgbe_init_interrupt_scheme
ixgbe_resume
Signed-off-by: Benjamin Poirier <bpoirier@suse.de>
Tested-by: Stephen Ko <stephen.s.ko@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c index dac7c01f8332..9e2be8c45c2d 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | |||
@@ -4836,7 +4836,9 @@ static int ixgbe_resume(struct pci_dev *pdev) | |||
4836 | 4836 | ||
4837 | pci_wake_from_d3(pdev, false); | 4837 | pci_wake_from_d3(pdev, false); |
4838 | 4838 | ||
4839 | rtnl_lock(); | ||
4839 | err = ixgbe_init_interrupt_scheme(adapter); | 4840 | err = ixgbe_init_interrupt_scheme(adapter); |
4841 | rtnl_unlock(); | ||
4840 | if (err) { | 4842 | if (err) { |
4841 | e_dev_err("Cannot initialize interrupts for device\n"); | 4843 | e_dev_err("Cannot initialize interrupts for device\n"); |
4842 | return err; | 4844 | return err; |