sfc: Implement adaptive IRQ moderation
Calculate a score for each 1000 IRQs: - TX completions are worth 1 point - RX completions are worth 4 if merged using LRO or 2 otherwise Reduce moderation if the score is less than 10000, down to a minimum of 5 us. Increase moderation if the score is more than 20000, up to the specified maximum. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
85451a951b
commit
6fb70fd1b5
@@ -52,7 +52,7 @@ extern void efx_schedule_reset(struct efx_nic *efx, enum reset_type type);
|
||||
extern void efx_suspend(struct efx_nic *efx);
|
||||
extern void efx_resume(struct efx_nic *efx);
|
||||
extern void efx_init_irq_moderation(struct efx_nic *efx, int tx_usecs,
|
||||
int rx_usecs);
|
||||
int rx_usecs, bool rx_adaptive);
|
||||
extern int efx_request_power(struct efx_nic *efx, int mw, const char *name);
|
||||
extern void efx_hex_dump(const u8 *, unsigned int, const char *);
|
||||
|
||||
|
Reference in New Issue
Block a user