summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Hutchings <bhutchings@solarflare.com>2010-04-28 09:01:33 +0000
committerGreg Kroah-Hartman <gregkh@suse.de>2010-05-12 15:02:34 -0700
commit068e5818f0d028cc0469ae7ae33368fd71024886 (patch)
tree748c0e27e877967f4dc36128f3b1177b4d457b81
parentfa8472cab002dbbb70bf2b1c975b56f75e5d88c6 (diff)
downloadkernel-crypto-068e5818f0d028cc0469ae7ae33368fd71024886.tar.gz
kernel-crypto-068e5818f0d028cc0469ae7ae33368fd71024886.tar.xz
kernel-crypto-068e5818f0d028cc0469ae7ae33368fd71024886.zip
sfc: Always close net device at the end of a disabling reset
commit f49a4589e9e25ef525da449b1ce5597cb659bbb5 upstream. This fixes a regression introduced by commit eb9f6744cbfa97674c13263802259b5aa0034594 "sfc: Implement ethtool reset operation". Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--drivers/net/sfc/efx.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/sfc/efx.c b/drivers/net/sfc/efx.c
index 46997e177ee..fb52e4705f3 100644
--- a/drivers/net/sfc/efx.c
+++ b/drivers/net/sfc/efx.c
@@ -1862,6 +1862,7 @@ out:
}
if (disabled) {
+ dev_close(efx->net_dev);
EFX_ERR(efx, "has been disabled\n");
efx->state = STATE_DISABLED;
} else {
@@ -1885,8 +1886,7 @@ static void efx_reset_work(struct work_struct *data)
}
rtnl_lock();
- if (efx_reset(efx, efx->reset_pending))
- dev_close(efx->net_dev);
+ (void)efx_reset(efx, efx->reset_pending);
rtnl_unlock();
}