]> git.baikalelectronics.ru Git - kernel.git/commit
sfc: don't free_irq()s if they were never requested
authorEdward Cree <ecree@solarflare.com>
Tue, 18 Aug 2020 12:44:50 +0000 (13:44 +0100)
committerDavid S. Miller <davem@davemloft.net>
Tue, 18 Aug 2020 19:49:13 +0000 (12:49 -0700)
commit815704dc0bf661e47d06399fec8c4fa5dee57cf7
tree3ebaae180c8baf28be5dbdd2b8fe3b66e0aa282a
parentf8fc9de424756cd52d5373a50d730498e1c5b0f3
sfc: don't free_irq()s if they were never requested

If efx_nic_init_interrupt fails, or was never run (e.g. due to an earlier
 failure in ef100_net_open), freeing irqs in efx_nic_fini_interrupt is not
 needed and will cause error messages and stack traces.
So instead, only do this if efx_nic_init_interrupt successfully completed,
 as indicated by the new efx->irqs_hooked flag.

Fixes: 1f8a10b27311 ("sfc_ef100: implement ndo_open/close and EVQ probing")
Signed-off-by: Edward Cree <ecree@solarflare.com>
Reviewed-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/sfc/net_driver.h
drivers/net/ethernet/sfc/nic.c