Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3c8e0b98 authored by Mitch Williams's avatar Mitch Williams Committed by Jeff Kirsher
Browse files

i40vf: don't stop me now



If a reset occurs when the netdev is closed, the reset task will hang in
napi_disable, causing deadlocks and general grumpiness.

Check to make sure the device is actually running before stopping
everything. This allows the reset task to complete and have a real good
time.

Change-ID: Iaaea84acbcb9b3810c216b14c3326e4287b75b58
Signed-off-by: default avatarMitch Williams <mitch.a.williams@intel.com>
Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
parent 1efc80ee
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -1578,13 +1578,14 @@ static void i40evf_reset_task(struct work_struct *work)
	adapter->flags &= ~I40EVF_FLAG_RESET_PENDING;

	i40evf_irq_disable(adapter);
	i40evf_napi_disable_all(adapter);

	if (netif_running(adapter->netdev)) {
		i40evf_napi_disable_all(adapter);
		netif_tx_disable(netdev);

		netif_tx_stop_all_queues(netdev);

		netif_carrier_off(netdev);
	}

	adapter->state = __I40EVF_RESETTING;

	/* kill and reinit the admin queue */