net: sfc: Use pci_clear_master() to disable bus mastering
pci_disable_device() disables many features, like MSI-X, which we never reenable in efx_reset(). Further, calls to pci_enable_device() and pci_disable_device() must be matched since the nesting count was introduced, so switch to using pci_clear_master() instead. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
This commit is contained in:
parent
6a479079c0
commit
ef1bba28bf
@ -1403,9 +1403,9 @@ static irqreturn_t falcon_fatal_interrupt(struct efx_nic *efx)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Disable both devices */
|
/* Disable both devices */
|
||||||
pci_disable_device(efx->pci_dev);
|
pci_clear_master(efx->pci_dev);
|
||||||
if (FALCON_IS_DUAL_FUNC(efx))
|
if (FALCON_IS_DUAL_FUNC(efx))
|
||||||
pci_disable_device(nic_data->pci_dev2);
|
pci_clear_master(nic_data->pci_dev2);
|
||||||
falcon_disable_interrupts(efx);
|
falcon_disable_interrupts(efx);
|
||||||
|
|
||||||
if (++n_int_errors < FALCON_MAX_INT_ERRORS) {
|
if (++n_int_errors < FALCON_MAX_INT_ERRORS) {
|
||||||
|
Loading…
Reference in New Issue
Block a user