Message ID | 1522391853-37298-1-git-send-email-talgi@mellanox.com |
---|---|
Headers | show |
Series | Introduce adaptive TX interrupt moderation to net DIM | expand |
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(-) >
From: Tal Gilboa <talgi@mellanox.com> Date: Fri, 30 Mar 2018 09:37:29 +0300 > 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. Series applied.
From: David Miller <davem@davemloft.net> Date: Sat, 31 Mar 2018 22:02:55 -0400 (EDT) > From: Tal Gilboa <talgi@mellanox.com> > Date: Fri, 30 Mar 2018 09:37:29 +0300 > >> 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. > > Series applied. This breaks the build: drivers/net/ethernet/broadcom/bcmsysport.c: In function ‘bcm_sysport_set_coalesce’: drivers/net/ethernet/broadcom/bcmsysport.c:657:11: error: implicit declaration of function ‘net_dim_get_def_profile’; did you mean ‘net_dim_exit_parking’? [-Werror=implicit-function-declaration] moder = net_dim_get_def_profile(priv->dim.dim.mode); ^~~~~~~~~~~~~~~~~~~~~~~
On 4/1/2018 6:19 AM, David Miller wrote: > From: David Miller <davem@davemloft.net> > Date: Sat, 31 Mar 2018 22:02:55 -0400 (EDT) > >> From: Tal Gilboa <talgi@mellanox.com> >> Date: Fri, 30 Mar 2018 09:37:29 +0300 >> >>> 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. >> >> Series applied. > > This breaks the build: > > drivers/net/ethernet/broadcom/bcmsysport.c: In function ‘bcm_sysport_set_coalesce’: > drivers/net/ethernet/broadcom/bcmsysport.c:657:11: error: implicit declaration of function ‘net_dim_get_def_profile’; did you mean ‘net_dim_exit_parking’? [-Werror=implicit-function-declaration] > moder = net_dim_get_def_profile(priv->dim.dim.mode); > ^~~~~~~~~~~~~~~~~~~~~~~ > Rebase issues, sorry. Sent a fixup patch.