All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH RFC 0/6] net/mlx5e: Improve ethtool coalesce support and support per-queue configuration
@ 2024-03-06 23:04 Rahul Rameshbabu
  2024-03-06 23:04 ` [PATCH RFC 1/6] net/mlx5e: Move DIM function declarations to en/dim.h Rahul Rameshbabu
                   ` (5 more replies)
  0 siblings, 6 replies; 8+ messages in thread
From: Rahul Rameshbabu @ 2024-03-06 23:04 UTC (permalink / raw)
  To: netdev
  Cc: Gal Pressman, Tariq Toukan, Saeed Mahameed, Jakub Kicinski,
	Paolo Abeni, Eric Dumazet, David S. Miller, Nabil S . Alramli,
	Joe Damato, Rahul Rameshbabu

This series introduces enhancements for ethtool coalescing support.

* We added support for on-the-fly cq_period_mode changes for mlx5 device MODIFY_CQ commands
  - This removes the need to tear down and create new channels for reconfiguring coalescing
* We also now support per-channel coalescing configuration.

We noticed that mlx5 devices were in fact in some cases not being configured
correctly based. Some cases include impacting tx queue coalescing parameters
when adaptive-rx is tuned on from the off state, etc. We end up fixing these
issues as well in this series and hope that now whatever state displayed in
ethtool -c <ifname> reflects the device state. The exception is when DIM is
enabled and the state can properly be observed using the per-channel coalescing
options in ethtool.

We would like to thank Joe Damato and Nabil Alramli for their submission to the
mailing list that inspired the work on this series [1]. We would like to get
their Signed-off-by trailers and accredit them as co-developers of this series.

[1] https://lore.kernel.org/netdev/20230918222955.2066-1-dev@nalramli.com/

Signed-off-by: Rahul Rameshbabu <rrameshbabu@nvidia.com>

Rahul Rameshbabu (6):
  net/mlx5e: Move DIM function declarations to en/dim.h
  net/mlx5e: Use DIM constants for CQ period mode parameter
  net/mlx5e: Dynamically allocate DIM structure for SQs/RQs
  net/mlx5e: Introduce per-channel coalescing parameters with global
    coalescing support
  net/mlx5e: Support updating coalescing configuration without resetting
    channels
  net/mlx5e: Implement ethtool callbacks for supporting per-queue
    coalescing

 drivers/net/ethernet/mellanox/mlx5/core/en.h  |  36 +-
 .../ethernet/mellanox/mlx5/core/en/channels.c |  83 +++++
 .../ethernet/mellanox/mlx5/core/en/channels.h |   4 +
 .../net/ethernet/mellanox/mlx5/core/en/dim.h  |  45 +++
 .../ethernet/mellanox/mlx5/core/en/params.c   |  72 +---
 .../ethernet/mellanox/mlx5/core/en/params.h   |   5 -
 .../net/ethernet/mellanox/mlx5/core/en_dim.c  |  95 +++++-
 .../ethernet/mellanox/mlx5/core/en_ethtool.c  | 307 ++++++++++++++----
 .../net/ethernet/mellanox/mlx5/core/en_main.c | 209 ++++++++++--
 .../net/ethernet/mellanox/mlx5/core/en_rep.c  |  10 +-
 .../net/ethernet/mellanox/mlx5/core/en_txrx.c |   4 +-
 include/linux/mlx5/cq.h                       |   7 +-
 include/linux/mlx5/mlx5_ifc.h                 |   7 +-
 13 files changed, 685 insertions(+), 199 deletions(-)
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en/dim.h

-- 
2.42.0


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2024-03-07 21:49 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-03-06 23:04 [PATCH RFC 0/6] net/mlx5e: Improve ethtool coalesce support and support per-queue configuration Rahul Rameshbabu
2024-03-06 23:04 ` [PATCH RFC 1/6] net/mlx5e: Move DIM function declarations to en/dim.h Rahul Rameshbabu
2024-03-06 23:04 ` [PATCH RFC 2/6] net/mlx5e: Use DIM constants for CQ period mode parameter Rahul Rameshbabu
2024-03-06 23:04 ` [PATCH RFC 3/6] net/mlx5e: Dynamically allocate DIM structure for SQs/RQs Rahul Rameshbabu
2024-03-06 23:04 ` [PATCH RFC 4/6] net/mlx5e: Introduce per-channel coalescing parameters with global coalescing support Rahul Rameshbabu
2024-03-06 23:04 ` [PATCH RFC 5/6] net/mlx5e: Support updating coalescing configuration without resetting channels Rahul Rameshbabu
2024-03-07 21:44   ` Rahul Rameshbabu
2024-03-06 23:04 ` [PATCH RFC 6/6] net/mlx5e: Implement ethtool callbacks for supporting per-queue coalescing Rahul Rameshbabu

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.