summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/intel/igb
diff options
context:
space:
mode:
authorxunleer <xunleer.li@huawei.com>2013-03-05 07:44:20 +0000
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2013-03-26 02:31:48 -0700
commita1f6c6b147cc5e83ec36dab8370bd5ec5fa1def6 (patch)
tree5280251d7b50fa2645d05796d801561da27f498e /drivers/net/ethernet/intel/igb
parenta79ca223e029aa4f09abb337accf1812c900a800 (diff)
downloadblackbird-op-linux-a1f6c6b147cc5e83ec36dab8370bd5ec5fa1def6.tar.gz
blackbird-op-linux-a1f6c6b147cc5e83ec36dab8370bd5ec5fa1def6.zip
ixgbevf: don't release the soft entries
When the ixgbevf driver is opened the request to allocate MSIX irq vectors may fail. In that case the driver will call ixgbevf_down() which will call ixgbevf_irq_disable() to clear the HW interrupt registers and calls synchronize_irq() using the msix_entries pointer in the adapter structure. However, when the function to request the MSIX irq vectors failed it had already freed the msix_entries which causes an OOPs from using the NULL pointer in synchronize_irq(). The calls to pci_disable_msix() and to free the msix_entries memory should not occur if device open fails. Instead they should be called during device driver removal to balance with the call to pci_enable_msix() and the call to allocate msix_entries memory during the device probe and driver load. Signed-off-by: Li Xun <xunleer.li@huawei.com> Signed-off-by: Greg Rose <gregory.v.rose@intel.com> Tested-by: Sibai Li <sibai.li@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/ethernet/intel/igb')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud