aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/sfc/net_driver.h
diff options
context:
space:
mode:
authorAlexandre Rames <arames@solarflare.com>2013-06-10 11:03:21 +0100
committerBen Hutchings <bhutchings@solarflare.com>2013-08-29 18:12:13 +0100
commit3881d8ab065b23bb07400aa820e737d80fdaced3 (patch)
tree646f9543591f8cfcf20d40e1cdb0d7046f9fa9cc /drivers/net/ethernet/sfc/net_driver.h
parentsfc: Prepare for RX scatter on EF10 (diff)
downloadlinux-dev-3881d8ab065b23bb07400aa820e737d80fdaced3.tar.xz
linux-dev-3881d8ab065b23bb07400aa820e737d80fdaced3.zip
sfc: Use a global count of active queues instead of pending drains
On EF10, the firmware will initiate a queue flush in certain error cases. We need to accept that flush events might appear at any time after a queue has been initialised, not just when we try to flush them. We can handle Falcon-architecture in just the same way. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Diffstat (limited to 'drivers/net/ethernet/sfc/net_driver.h')
-rw-r--r--drivers/net/ethernet/sfc/net_driver.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/ethernet/sfc/net_driver.h b/drivers/net/ethernet/sfc/net_driver.h
index 5341c76b1d02..c9b6f2dcb539 100644
--- a/drivers/net/ethernet/sfc/net_driver.h
+++ b/drivers/net/ethernet/sfc/net_driver.h
@@ -723,7 +723,7 @@ struct vfdi_status;
* @rps_flow_id: Flow IDs of filters allocated for accelerated RFS,
* indexed by filter ID
* @rps_expire_index: Next index to check for expiry in @rps_flow_id
- * @drain_pending: Count of RX and TX queues that haven't been flushed and drained.
+ * @active_queues: Count of RX and TX queues that haven't been flushed and drained.
* @rxq_flush_pending: Count of number of receive queues that need to be flushed.
* Decremented when the efx_flush_rx_queue() is called.
* @rxq_flush_outstanding: Count of number of RX flushes started but not yet
@@ -864,7 +864,7 @@ struct efx_nic {
unsigned int rps_expire_index;
#endif
- atomic_t drain_pending;
+ atomic_t active_queues;
atomic_t rxq_flush_pending;
atomic_t rxq_flush_outstanding;
wait_queue_head_t flush_wq;