summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/sfc/selftest.c
diff options
context:
space:
mode:
authorDaniel Pieczko2012-10-17 14:21:23 +0200
committerBen Hutchings2012-12-01 03:37:35 +0100
commitc2f3b8e3a44b6fe9e36704e30157ebe1a88c08b1 (patch)
treea33870250f24b7b832a52bb039aee7f4b20d842b /drivers/net/ethernet/sfc/selftest.c
parentsfc: Work-around flush timeout when flushes have completed (diff)
downloadkernel-qcow2-linux-c2f3b8e3a44b6fe9e36704e30157ebe1a88c08b1.tar.gz
kernel-qcow2-linux-c2f3b8e3a44b6fe9e36704e30157ebe1a88c08b1.tar.xz
kernel-qcow2-linux-c2f3b8e3a44b6fe9e36704e30157ebe1a88c08b1.zip
sfc: lock TX queues when calling netif_device_detach()
The assertion of netif_device_present() at the top of efx_hard_start_xmit() may fail if we don't do this. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Diffstat (limited to 'drivers/net/ethernet/sfc/selftest.c')
-rw-r--r--drivers/net/ethernet/sfc/selftest.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/sfc/selftest.c b/drivers/net/ethernet/sfc/selftest.c
index f6651d35d615..2069f51b2aa9 100644
--- a/drivers/net/ethernet/sfc/selftest.c
+++ b/drivers/net/ethernet/sfc/selftest.c
@@ -722,7 +722,7 @@ int efx_selftest(struct efx_nic *efx, struct efx_self_tests *tests,
/* Detach the device so the kernel doesn't transmit during the
* loopback test and the watchdog timeout doesn't fire.
*/
- netif_device_detach(efx->net_dev);
+ efx_device_detach_sync(efx);
if (efx->type->test_chip) {
rc_reset = efx->type->test_chip(efx, tests);