Commit 61e0217e authored by Jacob Keller's avatar Jacob Keller Committed by Jeff Kirsher

fm10k: print error message when stop_hw fails

fm10k_stop_hw_generic calls fm10k_disable_queues_generic, which may
return an error code indicating that the queues were not stopped within
the time limit. Notify the user by displaying a message in the kernel
message ring, in a similar way to how we notify the user when reset_hw
fails. There isn't much we can do to recover from this error, so
currently nothing else is done.
Signed-off-by: default avatarJacob Keller <jacob.e.keller@intel.com>
Tested-by: default avatarKrishneil Singh <Krishneil.k.singh@intel.com>
Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
parent b3525696
...@@ -1656,6 +1656,7 @@ void fm10k_down(struct fm10k_intfc *interface) ...@@ -1656,6 +1656,7 @@ void fm10k_down(struct fm10k_intfc *interface)
{ {
struct net_device *netdev = interface->netdev; struct net_device *netdev = interface->netdev;
struct fm10k_hw *hw = &interface->hw; struct fm10k_hw *hw = &interface->hw;
int err;
/* signal that we are down to the interrupt handler and service task */ /* signal that we are down to the interrupt handler and service task */
set_bit(__FM10K_DOWN, &interface->state); set_bit(__FM10K_DOWN, &interface->state);
...@@ -1680,7 +1681,9 @@ void fm10k_down(struct fm10k_intfc *interface) ...@@ -1680,7 +1681,9 @@ void fm10k_down(struct fm10k_intfc *interface)
fm10k_update_stats(interface); fm10k_update_stats(interface);
/* Disable DMA engine for Tx/Rx */ /* Disable DMA engine for Tx/Rx */
hw->mac.ops.stop_hw(hw); err = hw->mac.ops.stop_hw(hw);
if (err)
dev_err(&interface->pdev->dev, "stop_hw failed: %d\n", err);
/* free any buffers still on the rings */ /* free any buffers still on the rings */
fm10k_clean_all_tx_rings(interface); fm10k_clean_all_tx_rings(interface);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment