Thread (5 messages) flat view 5 messages, 1 author, 17h ago
HOTtoday

Revision v3 of 3 in this series.

Revisions (3)
  1. v1 [diff vs current]
  2. v2 [diff vs current]
  3. v3 current

[PATCH net-next v3 0/4] net: ntb_netdev: Preserve checksum offload across NTB

From: Koichiro Den <hidden>
Date: 2026-09-04 05:21:38
Also in: lkml

Hi,

ntb_netdev may be used on embedded systems, where CPU resources are
often limited. L4 checksum calculation can therefore become a bottleneck
even when traffic stays within a trusted PCIe fabric.

This series carries CHECKSUM_PARTIAL across the NTB link using opaque
per-payload metadata in ntb_transport. Peers without metadata support
continue to use software checksumming. The feature remains disabled by
default and must be enabled explicitly on trusted links.

Note: the first two fixes came from Sashiko's review of v1. They touch
the same ntb_transport path as the metadata patch, so keeping them here
avoids a cross-tree dependency. With review from the NTB side, I hope
the whole series can go through net-next.

Best regards,
Koichiro
---
Changes in v3:
  - Rebase after the related ntb_netdev/ntb_transport fixes landed in
    net-next
  - Avoid counting RX checksum failures as both errors and drops (Jakub)
  - Reject csum_start below ETH_HLEN on RX and fall back to software on
    TX (Jakub)
  - Use READ_ONCE() for hdr->ver and hdr->len (Sashiko)

Changes in v2:
  - Reset peer checksum capability on every link event (Sashiko)
  - Add prerequisite fixes for RX ordering and shared field endianness
    (Sashiko)

v2: https://lore.kernel.org/r/20260817064916.13278-1-den@valinux.co.jp/ (local)
v1: https://lore.kernel.org/r/20260814032913.3558500-1-den@valinux.co.jp/ (local)


Koichiro Den (4):
  NTB: ntb_transport: Order RX descriptor reads after completion
  NTB: ntb_transport: Use little-endian shared fields
  NTB: ntb_transport: Add per-payload client metadata
  net: ntb_netdev: Preserve CHECKSUM_PARTIAL across NTB

 drivers/net/ntb_netdev.c      | 95 ++++++++++++++++++++++++++++++-----
 drivers/ntb/ntb_transport.c   | 73 +++++++++++++++++----------
 include/linux/ntb_transport.h |  6 ++-
 3 files changed, 133 insertions(+), 41 deletions(-)

base-commit: 6ebcf5074cff0402730c6981d2397139fee6322d
-- 
2.51.0
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help