On 12/18/24 19:00, Jakub Kicinski wrote:
On Tue, 17 Dec 2024 18:51:57 +0000 Soham Chakradeo wrote:
Import tests for the following features (folder names in brackets): ECN (ecn) : RFC 3168 Close (close) : RFC 9293 TCP_INFO (tcp_info) : RFC 9293 Fast recovery (fast_recovery) : RFC 5681 Timestamping (timestamping) : RFC 1323 Nagle (nagle) : RFC 896 Selective Acknowledgments (sack) : RFC 2018 Recent Timestamp (ts_recent) : RFC 1323 Send file (sendfile) Syscall bad arg (syscall_bad_arg) Validate (validate) Blocking (blocking) Splice (splice) End of record (eor) Limited transmit (limited_transmit)
Excellent, thanks for adding all these! I will merge the patches momentarily but I do see a number of flakes on our VMs with debug configs enabled: https://netdev.bots.linux.dev/flakes.html?min-flip=0&tn-needle=packetdri...
In the 7 runs so far we got 2 flakes on:
tcp-timestamping-client-only-last-byte-pkt
Quickly skimming over this one, it looks like it does not account for the increased default 'tolerance_us'. Kernel packetdrill set it by default to 14K (instead of 10K IIRC).
I guess this statement:
// SCM_TSTAMP_SCHED for the last byte should be received almost immediately // once 10001 is acked at t=20ms.
the the follow-up check should be updated accordingly. In the failures observed so far the max timestamp is > 35ms.
Cheers,
Paolo