On 3/30/2018 9:37 AM, Tal Gilboa wrote:
Net DIM is a library designed for dynamic interrupt moderation. It was implemented and optimized with receive side interrupts in mind, since these are usually the CPU expensive ones. This patch-set introduces adaptive transmit interrupt moderation to net DIM, complete with a usage in the mlx5e driver. Using adaptive TX behavior would reduce interrupt rate for multiple scenarios. Furthermore, it is essential for increasing bandwidth on cases where payload aggregation is required.
Important note: In order to avoid conflicts, this patch-set is rebased over Florian Fainelli's "[PATCH net-next v2 3/3] net: bcmgenet: Fix coalescing settings handling" patch.
Tal Gilboa (4): net/dim: Rename *_get_profile() functions to *_get_rx_moderation() net/dim: Add "enabled" field to net_dim struct net/dim: Support adaptive TX moderation net/mlx5e: Enable adaptive-TX moderation drivers/net/ethernet/broadcom/bcmsysport.c | 2 +- drivers/net/ethernet/broadcom/bnxt/bnxt_dim.c | 8 +-- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 2 +- drivers/net/ethernet/mellanox/mlx5/core/en.h | 5 +- drivers/net/ethernet/mellanox/mlx5/core/en_dim.c | 28 ++++++--- .../net/ethernet/mellanox/mlx5/core/en_ethtool.c | 35 +++++++---- drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 34 ++++++++-- drivers/net/ethernet/mellanox/mlx5/core/en_rep.c | 2 +- drivers/net/ethernet/mellanox/mlx5/core/en_txrx.c | 37 ++++++++--- include/linux/net_dim.h | 72 +++++++++++++++++----- 10 files changed, 169 insertions(+), 56 deletions(-)