dev.dpdk.org archive mirror
 help / color / mirror / Atom feed
From: Joshua Washington <joshwash@google.com>
Cc: dev@dpdk.org, Joshua Washington <joshwash@google.com>
Subject: [PATCH v4 0/3] net/gve: TSO descriptor count fixes for GVE DQO
Date: Mon,  9 Nov 2026 11:43:28 -0800	[thread overview]
Message-ID: <20261109194331.393364-1-joshwash@google.com> (raw)
In-Reply-To: <20261103181442.381856-1-joshwash@google.com>

https://inbox.dpdk.org/dev/20250707231812.1937260-7-joshwash@google.com/
introduced descriptor limit checks for TSO packets in DPDK.
Unfortunately, a couple of bugs have been found in the implementation.

This patch series introduces fixes for those bugs and adds support for
the tx_pkt_prepare callback to reject potentially invalid packets before
they are dropped in the transmission path. Before a recently introduced
patch, the GVE behavior was to stop transmitting at the first invalid
packet, which would allow the application to do any necessary
linearization or packet modification before attempting to transmit
again. It turns out that that behavior is considered incorrect, so offer
tx_pkt_prepare as an alternative.

Changes in v4:
- Remove unnecessary checksum check when TSO is enabled.

Changes in v3:
- Remove extraneous Fixes tags.
- Drop patch 2 allowing multi-segment HEADERS, since that conflicts with
  tx_pkt_prepare.

Changes in v2:
- Rely on tx_pkt->nb_segs for descriptor limit calculation only as a
  precursor, falling back to the traditional gve_tx_pkt_nb_data_descs()
  if that optimization fails.
- Only call rte_net_intel_cksum_preapre on TSO packets that request
  checksum offloading. This enforces the additional requirement that
  headers are all in the same mbuf segment.
- Introduce new patch to validate minimum header length

Joshua Washington (3):
  net/gve: fix TSO segment offset calculation
  net/gve: introduce Tx packet preparation for DQO format
  net/gve: validate minimum header length for TSO packets

 drivers/net/gve/base/gve_desc_dqo.h |  1 +
 drivers/net/gve/gve_ethdev.h        |  3 ++
 drivers/net/gve/gve_tx_dqo.c        | 84 +++++++++++++++++++++++++++--
 3 files changed, 83 insertions(+), 5 deletions(-)

-- 
2.56.0.542.g3ef89b7020-goog


  parent reply	other threads:[~2026-11-09 19:43 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-30 18:42 [PATCH v2 0/4] net/gve: TSO descriptor count fixes for GVE DQO Joshua Washington
2026-10-30 18:43 ` [PATCH v2 1/4] net/gve: fix TSO segment offset calculation Joshua Washington
2026-10-30 18:43 ` [PATCH v2 2/4] net/gve: account for multi-mbuf headers when validating TSO Joshua Washington
2026-10-30 18:43 ` [PATCH v2 3/4] net/gve: introduce Tx packet preparation for DQO format Joshua Washington
2026-10-30 18:43 ` [PATCH v2 4/4] net/gve: validate minimum header length for TSO packets Joshua Washington
2026-11-02  7:45 ` [PATCH v2 0/4] net/gve: TSO descriptor count fixes for GVE DQO Stephen Hemminger
2026-11-02 19:40   ` Joshua Washington
2026-11-03 18:14 ` [PATCH v3 0/3] " Joshua Washington
2026-11-03 18:14   ` [PATCH v3 1/3] net/gve: fix TSO segment offset calculation Joshua Washington
2026-11-03 18:14   ` [PATCH v3 2/3] net/gve: introduce Tx packet preparation for DQO format Joshua Washington
2026-11-03 18:14   ` [PATCH v3 3/3] net/gve: validate minimum header length for TSO packets Joshua Washington
2026-11-04  9:34   ` [PATCH v3 0/3] net/gve: TSO descriptor count fixes for GVE DQO Stephen Hemminger
2026-11-09 17:57   ` Stephen Hemminger
2026-11-09 19:32     ` Joshua Washington
2026-11-09 19:43   ` Joshua Washington [this message]
2026-11-09 19:43     ` [PATCH v4 1/3] net/gve: fix TSO segment offset calculation Joshua Washington
2026-11-09 19:43     ` [PATCH v4 2/3] net/gve: introduce Tx packet preparation for DQO format Joshua Washington
2026-11-09 19:43     ` [PATCH v4 3/3] net/gve: validate minimum header length for TSO packets Joshua Washington

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=20261109194331.393364-1-joshwash@google.com \
    --to=joshwash@google.com \
    --cc=dev@dpdk.org \
    /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;
as well as URLs for NNTP newsgroup(s).