ixgbevf: fix AER error handling
authorEmil Tantilov <emil.s.tantilov@intel.com>
Wed, 16 Nov 2016 19:25:34 +0000 (11:25 -0800)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Tue, 3 Jan 2017 21:03:37 +0000 (13:03 -0800)
commitb19cf6eea9e2a497e6475fd02c0703f0b3a6d083
treed71eb00d3230a00e1ce417abb17fe0284c953702
parent126db13fa0e6d05c9f94e0125f61e773bd5ab079
ixgbevf: fix AER error handling

Make sure that we free the IRQs in ixgbevf_io_error_detected() when
responding to an PCIe AER error and also restore them when the
interface recovers from it.

Previously it was possible to trigger BUG_ON() check in free_msix_irqs()
in the case where we call ixgbevf_remove() after a failed recovery from
AER error because the interrupts were not freed.

Also moved the down and free functions into ixgbevf_close_suspend()
same as with ixgbe.

Signed-off-by: Emil Tantilov <emil.s.tantilov@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c