wireguard-go/tun
Jordan Whited 8a015f7c76 tun: reduce redundant checksumming in tcpGRO()
IPv4 header and pseudo header checksums were being computed on every
merge operation. Additionally, virtioNetHdr was being written at the
same time. This delays those operations until after all coalescing has
occurred.

Reviewed-by: Adrian Dewhurst <adrian@tailscale.com>
Signed-off-by: Jordan Whited <jordan@tailscale.com>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-10-10 15:07:36 +02:00
..
netstack netstack: fix typo 2023-07-04 15:56:30 +02:00
testdata/fuzz/Fuzz_handleGRO conn, device, tun: implement vectorized I/O on Linux 2023-03-10 14:52:17 +01:00
tuntest conn, device, tun: implement vectorized I/O plumbing 2023-03-10 14:52:13 +01:00
alignment_windows_test.go global: bump copyright year 2023-02-07 20:39:29 -03:00
checksum_test.go tun: unwind summing loop in checksumNoFold() 2023-10-10 15:07:36 +02:00
checksum.go tun: unwind summing loop in checksumNoFold() 2023-10-10 15:07:36 +02:00
errors.go tun: replace ErrorBatch() with errors.Join() 2023-03-17 15:18:04 +01:00
operateonfd.go global: bump copyright year 2023-02-07 20:39:29 -03:00
tcp_offload_linux_test.go tun: use correct IP header comparisons in tcpGRO() and tcpPacketsCanCoalesce() 2023-03-25 23:13:38 +01:00
tcp_offload_linux.go tun: reduce redundant checksumming in tcpGRO() 2023-10-10 15:07:36 +02:00
tun_darwin.go global: buff -> buf 2023-03-13 17:55:53 +01:00
tun_freebsd.go global: buff -> buf 2023-03-13 17:55:53 +01:00
tun_linux.go tun: replace ErrorBatch() with errors.Join() 2023-03-17 15:18:04 +01:00
tun_openbsd.go global: buff -> buf 2023-03-13 17:55:53 +01:00
tun_windows.go global: buff -> buf 2023-03-13 17:55:53 +01:00
tun.go global: buff -> buf 2023-03-13 17:55:53 +01:00