diff options
| author | Ben Hutchings <bhutchings@solarflare.com> | 2010-04-28 05:01:33 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2010-04-28 15:18:26 -0400 |
| commit | f49a4589e9e25ef525da449b1ce5597cb659bbb5 (patch) | |
| tree | 98c6bab46ec9291022fff7d05682edf4c8e617b9 /drivers | |
| parent | aabc5649078310094cbffb430fcbf9c25b6268f9 (diff) | |
sfc: Always close net device at the end of a disabling reset
This fixes a regression introduced by commit
eb9f6744cbfa97674c13263802259b5aa0034594 "sfc: Implement ethtool
reset operation".
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Cc: stable@kernel.org
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/net/sfc/efx.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/sfc/efx.c b/drivers/net/sfc/efx.c index 6486657c47b8..649a264d6a81 100644 --- a/drivers/net/sfc/efx.c +++ b/drivers/net/sfc/efx.c | |||
| @@ -1861,6 +1861,7 @@ out: | |||
| 1861 | } | 1861 | } |
| 1862 | 1862 | ||
| 1863 | if (disabled) { | 1863 | if (disabled) { |
| 1864 | dev_close(efx->net_dev); | ||
| 1864 | EFX_ERR(efx, "has been disabled\n"); | 1865 | EFX_ERR(efx, "has been disabled\n"); |
| 1865 | efx->state = STATE_DISABLED; | 1866 | efx->state = STATE_DISABLED; |
| 1866 | } else { | 1867 | } else { |
| @@ -1884,8 +1885,7 @@ static void efx_reset_work(struct work_struct *data) | |||
| 1884 | } | 1885 | } |
| 1885 | 1886 | ||
| 1886 | rtnl_lock(); | 1887 | rtnl_lock(); |
| 1887 | if (efx_reset(efx, efx->reset_pending)) | 1888 | (void)efx_reset(efx, efx->reset_pending); |
| 1888 | dev_close(efx->net_dev); | ||
| 1889 | rtnl_unlock(); | 1889 | rtnl_unlock(); |
| 1890 | } | 1890 | } |
| 1891 | 1891 | ||
