Thread (3 messages) flat view 3 messages, 2 authors, 8d ago

Re: [PATCH net-next] selftests: drv-net: add BIG TCP test cases

From: Jakub Kicinski <kuba@kernel.org>
Date: 2026-09-11 17:01:02
Also in: linux-kselftest, lkml

On Thu, 10 Sep 2026 22:06:59 -0700 Narcisa Vasile wrote:
Add four new test cases that validate coalescing
under increased size limits (BIG TCP):

big_tcp_data_same
  - validates that equal-sized segments coalesce past
   the legacy IP_MAXPACKET limit.
big_tcp_data_lrg_sml
  - validates that a smaller final segment coalesces into the
    previous chain of large-sized segments while crossing the
    IP_MAXPACKET limit.
big_tcp_tcp_seq
  - validates that a packet with a wrong sequence number doesn't
    coalesce. The test uses a sequence number for which the low 16 bits
    correspond to the correct sequence number to validate against
    truncation bugs, since total aggregate length crosses over the
    legacy size limit for BIG TCP.
big_tcp_large_max
  - validates that coalescing stops at the configured BIG TCP limit.
Looks like SW is struggling to aggregate enough. Do we need longer
timeouts perhaps? Note that the debug kernel build includes 
kernel/configs/debug.config

AI says:

Thanks for adding the BIG TCP coalescing coverage to gro_sw.py. CI is
flagging the new subtests as failing on our debug-kernel executor
(vmksft-net-drv-dbg, gro-sw-py):

  not ok gro_sw.test.ipv4_big_tcp_data_same
  not ok gro_sw.test.ipv4_big_tcp_data_lrg_sml
  not ok gro_sw.test.ipv4_big_tcp_tcp_seq
  not ok gro_sw.test.ipv4_big_tcp_large_max
  (and the ipv6 equivalents)

The rx side never fully coalesces the injected segments before the
background receiver gives up and the test's retry loop (6 attempts) is
exhausted, e.g.:

  Expected {68952 }, Total 1 packets
  Received {20280 [!=68952]40560 [!=0]8112 [!=0]}, Total 3 packets.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help