diff options
| author | Jiayuan Chen <jiayuan.chen@linux.dev> | 2026-08-26 22:11:27 +0800 |
|---|---|---|
| committer | Jakub Kicinski <kuba@kernel.org> | 2026-08-27 12:47:34 -0700 |
| commit | 6a7e91f890eceb4fd9d3662e7ffba1fcb55cc00e (patch) | |
| tree | 98365cd23bcfbda7709155208a607e2e1e85409b /tools/perf/scripts/python | |
| parent | ce2b807f42ed5e55567b8864ab72963f90779270 (diff) | |
| download | linux-6a7e91f890eceb4fd9d3662e7ffba1fcb55cc00e.tar.gz linux-6a7e91f890eceb4fd9d3662e7ffba1fcb55cc00e.zip | |
selftests/net: packetdrill: add tcp_urg_ptr_retransmit
Drive a connection into urgent mode and force a multi-segment retransmit,
checking that each retransmitted segment keeps its own urg_ptr.
The test asserts the fixed behaviour: the hole is retransmitted as two
independent skbs, each with its own urg_ptr (5001 and 4001) and no PSH.
An unpatched kernel instead sends one super-skb whose GSO split copies
urg_ptr onto the second segment and also sets PSH there, so on an unpatched
kernel the mismatch shows up on the PSH bit (actual P.U ... urg 5001) before
the urg_ptr:
tcp_urg_ptr_retransmit.pkt:63: live packet field tcp_psh:
expected: 0 (0x0) vs actual: 1 (0x1)
script packet: .U 1001:2001(1000) ack 1
actual packet: P.U 1001:2001(1000) ack 1 win 1050
After the fix the retransmit carries a per-segment urg_ptr and the test
passes.
Signed-off-by: Jiayuan Chen <jiayuan.chen@linux.dev>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Link: https://patch.msgid.link/20260826141145.67823-2-jiayuan.chen@linux.dev
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions
