This series fixes several ixgbe error and reset codepaths.

The first three patches are prerequisite fixes that make sure that
the driver does not access hardware during the reset time when it
is unavailable. These add the required availability checks etc.

The final patch adds missing handlers for PCI function reset through sysfs
in the manner that is safe for ixgbe. It implements the PCI reset prepare
and completion callbacks to quiesce and reinitialize the adapter. This
prevents TX queue timeouts and other related problems caused by
inconsistent hardware state after a sysfs-triggered PCI reset.

Previous version: 
https://lore.kernel.org/intel-wired-lan/[email protected]/
v1->v2: Almost complete rework of the series to ensure safe
        reset procedure
v2->v3: Split the netdev availability check refactoring into
        main and FCoE patches, tag -net and -next patches separately

Sergey Temerkhanov (5):
  ixgbe: Refactor device operations to check whether netdev is available
  ixgbe: Defer FCoE queue rebuild while netdev is unavailable
  ixgbe: Fix FCoE refcount taking for unsupported adapters
  ixgbe: Restore previous XDP program on ixgbe_setup_tc() failure
  ixgbe: Implement PCI reset handler

 drivers/net/ethernet/intel/ixgbe/ixgbe.h      |   6 +
 .../net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c   |  13 +-
 .../net/ethernet/intel/ixgbe/ixgbe_ethtool.c  |  34 +--
 drivers/net/ethernet/intel/ixgbe/ixgbe_fcoe.c |  42 +++-
 drivers/net/ethernet/intel/ixgbe/ixgbe_fcoe.h |   1 +
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 193 +++++++++++++++++-
 drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c  |   4 +-
 7 files changed, 262 insertions(+), 31 deletions(-)

-- 
2.53.0

Reply via email to