From: Andy Gospodarek <andy@greyhouse.net>
To: netdev@vger.kernel.org
Cc: mchan@broadcom.com, talgi@mellanox.com, ogerlitz@mellanox.com,
Andy Gospodarek <gospo@broadcom.com>
Subject: [PATCH net-next v2 00/10] net: create dynamic software irq moderation library
Date: Fri, 5 Jan 2018 17:58:04 -0500 [thread overview]
Message-ID: <1515193094-9554-1-git-send-email-andy@greyhouse.net> (raw)
From: Andy Gospodarek <gospo@broadcom.com>
This converts the dynamic interrupt moderation library from the mlx5e
driver into a library so it can be used by any driver. The penultimate
patch in this set adds support for thiw new dynamic interrupt moderation
library in the bnxt_en driver and the last patch creates an entry in the
MAINTAINERS file for this library.
The main purpose of this code is to allow an administrator to make sure
that default coalesce settings are optimized for low latency, but
quickly adapt to handle high throughput/bulk traffic by altering how
much time passes before popping an interrupt.
For any new driver the following changes would be needed to use this
library:
- add elements in ring struct to track items needed by this library
- create function that can be called to actually set coalesce settings
for the driver
Credit to Rob Rice and Lee Reed for doing some of the initial proof of
concept and testing for this patch and Tal Gilboa and Or Gerlitz for
their comments, etc on this set.
v2: Spelling fixes from Stephen Hemminger, bnxt_en suggestions from
Michael Chan, spelling and formatting fixes from Or Gerlitz, and
spelling and mlx5e changes suggested by Tal Gilboa.
Andy Gospodarek (10):
net/mlx5e: Move interrupt moderation structs to new file
net/mlx5e: Move interrupt moderation forward declarations
net/mlx5e: Remove rq references in mlx5e_rx_am
net/mlx5e: Move AM logic enums
net/mlx5e: Move generic functions to new file
net/mlx5e: Change Mellanox references in DIM code
net/mlx5e: Move dynamic interrupt coalescing code to include/linux
net/dim: use struct net_dim_sample as arg to net_dim
bnxt_en: add support for software dynamic interrupt moderation
MAINTAINERS: add entry for Dynamic Interrupt Moderation
MAINTAINERS | 5 +
drivers/net/ethernet/broadcom/bnxt/Makefile | 2 +-
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 49 +++
drivers/net/ethernet/broadcom/bnxt/bnxt.h | 34 +-
drivers/net/ethernet/broadcom/bnxt/bnxt_dim.c | 32 ++
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 12 +
drivers/net/ethernet/mellanox/mlx5/core/Makefile | 2 +-
drivers/net/ethernet/mellanox/mlx5/core/en.h | 49 +--
drivers/net/ethernet/mellanox/mlx5/core/en_dim.c | 49 +++
.../net/ethernet/mellanox/mlx5/core/en_ethtool.c | 12 +-
drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 52 ++-
drivers/net/ethernet/mellanox/mlx5/core/en_rep.c | 4 +-
drivers/net/ethernet/mellanox/mlx5/core/en_rx_am.c | 341 -------------------
drivers/net/ethernet/mellanox/mlx5/core/en_txrx.c | 10 +-
include/linux/mlx5/mlx5_ifc.h | 6 -
include/linux/net_dim.h | 372 +++++++++++++++++++++
16 files changed, 604 insertions(+), 427 deletions(-)
create mode 100644 drivers/net/ethernet/broadcom/bnxt/bnxt_dim.c
create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en_dim.c
delete mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en_rx_am.c
create mode 100644 include/linux/net_dim.h
--
2.7.4
next reply other threads:[~2018-01-05 22:58 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-05 22:58 Andy Gospodarek [this message]
2018-01-05 22:58 ` [PATCH net-next v2 01/10] net/mlx5e: Move interrupt moderation structs to new file Andy Gospodarek
2018-01-05 22:58 ` [PATCH net-next v2 02/10] net/mlx5e: Move interrupt moderation forward declarations Andy Gospodarek
2018-01-05 22:58 ` [PATCH net-next v2 03/10] net/mlx5e: Remove rq references in mlx5e_rx_am Andy Gospodarek
2018-01-05 22:58 ` [PATCH net-next v2 04/10] net/mlx5e: Move AM logic enums Andy Gospodarek
2018-01-05 22:58 ` [PATCH net-next v2 05/10] net/mlx5e: Move generic functions to new file Andy Gospodarek
2018-01-05 22:58 ` [PATCH net-next v2 06/10] net/mlx5e: Change Mellanox references in DIM code Andy Gospodarek
2018-01-07 9:44 ` Tal Gilboa
2018-01-08 14:18 ` Andy Gospodarek
2018-01-05 22:58 ` [PATCH net-next v2 07/10] net/mlx5e: Move dynamic interrupt coalescing code to include/linux Andy Gospodarek
2018-01-05 22:58 ` [PATCH net-next v2 08/10] net/dim: use struct net_dim_sample as arg to net_dim Andy Gospodarek
2018-01-05 22:58 ` [PATCH net-next v2 09/10] bnxt_en: add support for software dynamic interrupt moderation Andy Gospodarek
2018-01-05 23:17 ` Michael Chan
2018-01-08 10:50 ` Vasundhara Volam
2018-01-08 14:04 ` Andy Gospodarek
2018-01-05 22:58 ` [PATCH net-next v2 10/10] MAINTAINERS: add entry for Dynamic Interrupt Moderation Andy Gospodarek
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1515193094-9554-1-git-send-email-andy@greyhouse.net \
--to=andy@greyhouse.net \
--cc=gospo@broadcom.com \
--cc=mchan@broadcom.com \
--cc=netdev@vger.kernel.org \
--cc=ogerlitz@mellanox.com \
--cc=talgi@mellanox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox