aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/sfc/net_driver.h
diff options
context:
space:
mode:
authorEdward Cree <ecree@solarflare.com>2019-11-22 17:57:40 +0000
committerJakub Kicinski <jakub.kicinski@netronome.com>2019-11-22 17:50:55 -0800
commit6fbc05e59163e66795a2bbdb4068abd7f7ae3510 (patch)
treeb80da262c1bf159e4325f574a1c76902669ad468 /drivers/net/ethernet/sfc/net_driver.h
parentsfc: add statistics for ARFS (diff)
downloadlinux-dev-6fbc05e59163e66795a2bbdb4068abd7f7ae3510.tar.xz
linux-dev-6fbc05e59163e66795a2bbdb4068abd7f7ae3510.zip
sfc: do ARFS expiry work occasionally even without NAPI poll
If there's no traffic on a channel, its ARFS expiry work will never get scheduled by efx_poll() as that isn't being run. So make efx_filter_rfs_expire() reschedule itself to run after 30 seconds. Signed-off-by: Edward Cree <ecree@solarflare.com> Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Diffstat (limited to 'drivers/net/ethernet/sfc/net_driver.h')
-rw-r--r--drivers/net/ethernet/sfc/net_driver.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/sfc/net_driver.h b/drivers/net/ethernet/sfc/net_driver.h
index ccd480e699d3..1f88212be085 100644
--- a/drivers/net/ethernet/sfc/net_driver.h
+++ b/drivers/net/ethernet/sfc/net_driver.h
@@ -501,7 +501,7 @@ struct efx_channel {
unsigned int rfs_expire_index;
unsigned int n_rfs_succeeded;
unsigned int n_rfs_failed;
- struct work_struct filter_work;
+ struct delayed_work filter_work;
#define RPS_FLOW_ID_INVALID 0xFFFFFFFF
u32 *rps_flow_id;
#endif