netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 0/2] bnxt_en: implement tcp-data-split ethtool command
@ 2024-09-06  8:07 Taehee Yoo
  2024-09-06  8:07 ` [PATCH net-next 1/2] bnxt_en: add support for rx-copybreak " Taehee Yoo
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Taehee Yoo @ 2024-09-06  8:07 UTC (permalink / raw)
  To: davem, kuba, pabeni, edumazet, michael.chan, netdev; +Cc: ap420073

NICs that use the bnxt_en driver support tcp-data-split feature named
HDS(header-data-split).
But there is no implementation for the HDS to enable/disable by ethtool.
Only getting the current HDS status is implemented and the HDS is just
automatically enabled only when either LRO, HW-GRO, or JUMBO is enabled.
The hds_threshold follows the rx-copybreak value but it wasn't
changeable.

To implement, it requires decoupling rx-copybreak and hds_threshold
value.

The first patch implements .{set, get}_tunable() in the bnxt_en.
The bnxt_en driver has been supporting the rx-copybreak feature but is
not configurable, Only the default rx-copybreak value has been working.
So, it changes the bnxt_en driver to be able to configure
the rx-copybreak value.

The second patch adds an implementation of tcp-data-split ethtool
command.
The HDS relies on the Aggregation ring, which is automatically enabled
when either LRO, GRO, or large mtu is configured.
So, if the Aggregation ring is enabled, HDS is automatically enabled by
it.

The approach of this patch is to support the bnxt_en driver setting up
enable/disable HDS explicitly, not rely on LRO/GRO, JUMBO.
In addition, hds_threshold no longer follows rx-copybreak.
By this patch, hds_threshold always be 0.

Taehee Yoo (2):
  bnxt_en: add support for rx-copybreak ethtool command
  bnxt_en: add support for tcp-data-split ethtool command

 drivers/net/ethernet/broadcom/bnxt/bnxt.c     | 30 ++++----
 drivers/net/ethernet/broadcom/bnxt/bnxt.h     | 10 ++-
 .../net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 70 ++++++++++++++++++-
 3 files changed, 91 insertions(+), 19 deletions(-)

-- 
2.34.1


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

end of thread, other threads:[~2024-09-07 17:06 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-06  8:07 [PATCH net-next 0/2] bnxt_en: implement tcp-data-split ethtool command Taehee Yoo
2024-09-06  8:07 ` [PATCH net-next 1/2] bnxt_en: add support for rx-copybreak " Taehee Yoo
2024-09-06  8:07 ` [PATCH net-next 2/2] bnxt_en: add support for tcp-data-split " Taehee Yoo
2024-09-07  1:38 ` [PATCH net-next 0/2] bnxt_en: implement " Jakub Kicinski
2024-09-07 17:06   ` Taehee Yoo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).