Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CI: e2e: pull/run and decrypt from local registry: timeout #24219

Closed
edsantiago opened this issue Oct 9, 2024 · 20 comments
Closed

CI: e2e: pull/run and decrypt from local registry: timeout #24219

edsantiago opened this issue Oct 9, 2024 · 20 comments
Labels
flakes Flakes from Continuous Integration network Networking related issue or feature pasta pasta(1) bugs or features rootless

Comments

@edsantiago
Copy link
Member

Placeholder for a flake I've been seeing in e2e. So far, only rootless, but that might be happenstance.

• [FAILED] [94.159 seconds]
   Podman pull
     podman pull and decrypt        <------ sometimes "run and decrypt"
       [It] From local registry

$ podman [options] push -q --compression-format=zstd --encryption-key jwe:/tmp/CI_vNKl/podman-e2e-2638702892/subtest-158022943/key,withcomma.rsa.pub --tls-verify=false --remove-signatures quay.io/libpod/alpine:latest localhost:5012/my-alpine-pull-and-decrypt
$ podman [options] rmi quay.io/libpod/alpine:latest
Untagged: quay.io/libpod/alpine:latest
Deleted: 961769676411f082461f9ef46626dd7a2d1e2b2a38e6a44364bcbecf51e66dd4
$ podman [options] pull --tls-verify=false localhost:5012/my-alpine-pull-and-decrypt
Trying to pull localhost:5012/my-alpine-pull-and-decrypt:latest...
Getting image source signatures
Copying blob sha256:3e9bdc83b3abf695cc03140088561898566a98d3895d11dd5e5ba6c54031c6d0
SIGABRT: abort
...
[FAILED] Timed out after 90.001s.
x x x x x x
int(5) podman(5) rawhide(2) rootless(5) host(5) sqlite(5)
debian-13(2)
fedora-40(1)
@edsantiago edsantiago added flakes Flakes from Continuous Integration rootless labels Oct 9, 2024
@Luap99
Copy link
Member

Luap99 commented Oct 9, 2024

I saw this before as well, I am somewhat convinced that this is a pasta issue on the local port splice bypass. For example these are the exact same set of tests that were broken in #23517. Also #22575 might be related too.

What happens there is we spawn a registry container (with default network) and the forward the port. As we use 127.0.0.1 as registry address it used the splice bypass path in pasta and I assume that might cause hangs in some way as the connection is not closed properly maybe? i.e. from the stack traces we get in CI on command timeout is is very obvious that these hangs all happen while we pull the image, i.e. normal http tcp connection.

In particular this seems to be the goroutine hanging

goroutine 100 gp=0xc000584c40 m=nil [IO wait]:
           runtime.gopark(0x413765?, 0x40?, 0x40?, 0x86?, 0xb?)
           	/usr/lib/golang/src/runtime/proc.go:424 +0xce fp=0xc0000741f8 sp=0xc0000741d8 pc=0x47810e
           runtime.netpollblock(0x4e1bd8?, 0x409ec6?, 0x0?)
           	/usr/lib/golang/src/runtime/netpoll.go:575 +0xf7 fp=0xc000074230 sp=0xc0000741f8 pc=0x439d77
           internal/poll.runtime_pollWait(0x7fdbc27cbc78, 0x72)
           	/usr/lib/golang/src/runtime/netpoll.go:351 +0x85 fp=0xc000074250 sp=0xc000074230 pc=0x476fc5
           internal/poll.(*pollDesc).wait(0xc000488500?, 0xc0005c8000?, 0x0)
           	/usr/lib/golang/src/internal/poll/fd_poll_runtime.go:84 +0x27 fp=0xc000074278 sp=0xc000074250 pc=0x502ba7
           internal/poll.(*pollDesc).waitRead(...)
           	/usr/lib/golang/src/internal/poll/fd_poll_runtime.go:89
           internal/poll.(*FD).Read(0xc000488500, {0xc0005c8000, 0x8000, 0x8000})
           	/usr/lib/golang/src/internal/poll/fd_unix.go:165 +0x27a fp=0xc000074310 sp=0xc000074278 pc=0x503e9a
           net.(*netFD).Read(0xc000488500, {0xc0005c8000?, 0x2?, 0x2?})
           	/usr/lib/golang/src/net/fd_posix.go:55 +0x25 fp=0xc000074358 sp=0xc000074310 pc=0x63cd05
           net.(*conn).Read(0xc0004c01d8, {0xc0005c8000?, 0xc000580e08?, 0x19f170?})
           	/usr/lib/golang/src/net/net.go:189 +0x45 fp=0xc0000743a0 sp=0xc000074358 pc=0x64eaa5
           net.(*TCPConn).Read(0xc000074400?, {0xc0005c8000?, 0xc0004f3020?, 0xc0005c8008?})
           	<autogenerated>:1 +0x25 fp=0xc0000743d0 sp=0xc0000743a0 pc=0x6664c5
           net/http.(*persistConn).Read(0xc0004abd40, {0xc0005c8000?, 0x0?, 0xc0000744c0?})
           	/usr/lib/golang/src/net/http/transport.go:2052 +0x4a fp=0xc000074430 sp=0xc0000743d0 pc=0x79204a
           bufio.(*Reader).Read(0xc0004f3020, {0xc0005c8000, 0x8000, 0xe47?})
           	/usr/lib/golang/src/bufio/bufio.go:227 +0xe3 fp=0xc000074468 sp=0xc000074430 pc=0x559f03
           io.(*LimitedReader).Read(0xc0002fa258, {0xc0005c8000?, 0x7866e0?, 0xc0005ee36c?})
           	/usr/lib/golang/src/io/io.go:479 +0x43 fp=0xc000074498 sp=0xc000074468 pc=0x490323
           net/http.(*body).readLocked(0xc0005ee340, {0xc0005c8000?, 0xc0002eff80?, 0x10?})
           	/usr/lib/golang/src/net/http/transfer.go:844 +0x3b fp=0xc0000744e0 sp=0xc000074498 pc=0x78677b
           net/http.(*body).Read(0xc0005c8008?, {0xc0005c8000?, 0x7ff8?, 0x7fdbc27c2128?})
           	/usr/lib/golang/src/net/http/transfer.go:836 +0x112 fp=0xc000074558 sp=0xc0000744e0 pc=0x786652
           net/http.(*bodyEOFSignal).Read(0xc0005ee380, {0xc0005c8000, 0x8000, 0x8000})
           	/usr/lib/golang/src/net/http/transport.go:2913 +0x13f fp=0xc0000745d8 sp=0xc000074558 pc=0x79617f
           github.com/containers/image/v5/docker.(*bodyReader).Read(0xc0006a7a40, {0xc0005c8000?, 0x0?, 0x0?})
           	/var/tmp/go/src/github.com/containers/podman/vendor/github.com[/containers/image/v5/docker/body_reader.go:143](https://github.com/containers/image/blob/985b57d9f76b661562b845c2215d2e03283d038e/v5/docker/body_reader.go#L143) +0x6a fp=0xc000074928 sp=0xc0000745d8 pc=0x89d16a
           github.com/containers/image/v5/copy.(*digestingReader).Read(0xc0002f44b0, {0xc0005c8000, 0xc000074a08?, 0x8000})
           	/var/tmp/go/src/github.com/containers/podman/vendor/github.com[/containers/image/v5/copy/digesting_reader.go:44](https://github.com/containers/image/blob/985b57d9f76b661562b845c2215d2e03283d038e/v5/copy/digesting_reader.go#L44) +0x42 fp=0xc0000749e8 sp=0xc000074928 pc=0xdadb42
           io.(*nopCloser).Read(0x240ca1cc0fc19dc6?, {0xc0005c8000?, 0xae4937e7e75022e8?, 0x4a7484aa2de92c6f?})
           	<autogenerated>:1 +0x29 fp=0xc000074a18 sp=0xc0000749e8 pc=0x492509
           github.com/vbauerster/mpb/v8.ewmaProxyReader.Read({{0x202c340?, 0xc00045f1d0?}, 0xc000506280?}, {0xc0005c8000, 0x8000, 0x8000})
           	/var/tmp/go/src/github.com[/containers/podman/vendor/github.com/vbauerster/mpb/v8/proxyreader.go:36](https://github.com/containers/podman/blob/985b57d9f76b661562b845c2215d2e03283d038e/vendor/github.com/vbauerster/mpb/v8/proxyreader.go#L36) +0x8a fp=0xc000074a90 sp=0xc000074a18 pc=0xda0fca
           github.com/vbauerster/mpb/v8.(*ewmaProxyReader).Read(0xa81a664ba2bfe8a1?, {0xc0005c8000?, 0x8b4cc808818f7ff0?, 0x13810a8172c72602?})
           	<autogenerated>:1 +0x47 fp=0xc000074ad0 sp=0xc000074a90 pc=0xda4727
           io.(*multiReader).Read(0xc0002fa2b8, {0xc0005c8000, 0x8000, 0x8000})
           	/usr/lib/golang/src/io/multi.go:26 +0x93 fp=0xc000074b18 sp=0xc000074ad0 pc=0x490db3
           github.com/containers/image/v5/copy.errorAnnotationReader.Read({{0x2024a20?, 0xc0002fa2b8?}}, {0xc0005c8000?, 0xaa8?, 0xc000074bf0?})
           	/var/tmp/go/src/github.com/containers/podman/vendor/github.com[/containers/image/v5/copy/blob.go:165](https://github.com/containers/image/blob/985b57d9f76b661562b845c2215d2e03283d038e/v5/copy/blob.go#L165) +0x33 fp=0xc000074b78 sp=0xc000074b18 pc=0xda84d3
           github.com/containers/image/v5/copy.(*errorAnnotationReader).Read(0xc0005c8031?, {0xc0005c8000?, 0x7fcf?, 0xa40?})
           	<autogenerated>:1 +0x45 fp=0xc000074bb0 sp=0xc000074b78 pc=0xdc44e5
           io.(*teeReader).Read(0xc000148860, {0xc0005c8000, 0xc0005c8000?, 0x8000})
           	/usr/lib/golang/src/io/io.go:628 +0x31 fp=0xc000074bf8 sp=0xc000074bb0 pc=0x4906f1
           bufio.(*Reader).fill(0xc0001ca960)
           	/usr/lib/golang/src/bufio/bufio.go:110 +0x103 fp=0xc000074c30 sp=0xc000074bf8 pc=0x559a83
           bufio.(*Reader).WriteTo(0xc0001ca960, {0x7fdbc1ce4af0, 0xc000160100})
           	/usr/lib/golang/src/bufio/bufio.go:546 +0x116 fp=0xc000074c68 sp=0xc000074c30 pc=0x55b116
           github.com/containers/storage/pkg/ioutils.(*readWriteToCloserWrapper).WriteTo(0x2d152a0?, {0x7fdbc1ce4af0?, 0xc000160100?})
           	<autogenerated>:1 +0x2f fp=0xc000074c90 sp=0xc000074c68 pc=0x83e16f
           io.copyBuffer({0x7fdbc1ce4af0, 0xc000160100}, {0x7fdbc1ce4b10, 0xc0001265a0}, {0x0, 0x0, 0x0})
           	/usr/lib/golang/src/io/io.go:411 +0x9d fp=0xc000074d08 sp=0xc000074c90 pc=0x48ff9d
           io.Copy(...)
           	/usr/lib/golang/src/io/io.go:388
           github.com/containers/image/v5/storage.(*storageImageDestination).putBlobToPendingFile(0xc0003d31e0, {0x2028340, 0xc00045f220}, {{0xc0004d1180, 0x47}, 0x2b8528, {0x0, 0x0, 0x0}, 0xc000126180, ...}, ...)
           	/var/tmp/go/src/github.com/containers/podman/vendor/github.com[/containers/image/v5/storage/storage_dest.go:256](https://github.com/containers/image/blob/985b57d9f76b661562b845c2215d2e03283d038e/v5/storage/storage_dest.go#L256) +0x58e fp=0xc000074f00 sp=0xc000074d08 pc=0xea51ee
           github.com/containers/image/v5/storage.(*storageImageDestination).PutBlobWithOptions(0xc0003d31e0, {0x0?, 0x0?}, {0x2028340?, 0xc00045f220?}, {{0xc0004d1180, 0x47}, 0x2b8528, {0x0, 0x0, ...}, ...}, ...)
           	/var/tmp/go/src/github.com/containers/podman/vendor/github.com[/containers/image/v5/storage/storage_dest.go:212](https://github.com/containers/image/blob/985b57d9f76b661562b845c2215d2e03283d038e/v5/storage/storage_dest.go#L212) +0x69 fp=0xc000074fa8 sp=0xc000074f00 pc=0xea4b69
           github.com/containers/image/v5/copy.(*imageCopier).copyBlobFromStream(0xc000132100, {0x2036d78, 0xc000681680}, {0x7fdbc1ce4a28, _}, {{0xc0004d1180, 0x47}, 0x2b8528, {0x0, 0x0, ...}, ...}, ...)
           	/var/tmp/go/src/github.com/containers/podman/vendor/github.com[/containers/image/v5/copy/blob.go:107](https://github.com/containers/image/blob/985b57d9f76b661562b845c2215d2e03283d038e/v5/copy/blob.go#L107) +0x96e fp=0xc0000753e8 sp=0xc000074fa8 pc=0xda78ae
           github.com/containers/image/v5/copy.(*imageCopier).copyLayerFromStream(0xc000132100, {0x2036d78, 0xc000681680}, {0x7fdbc1ce4a28, 0xc0006a7a40}, {{0xc0004d1180, 0x47}, 0x2b8528, {0x0, 0x0, ...}, ...}, ...)
           	/var/tmp/go/src/github.com/containers/podman/vendor/github.com[/containers/image/v5/copy/single.go:950](https://github.com/containers/image/blob/985b57d9f76b661562b845c2215d2e03283d038e/v5/copy/single.go#L950) +0x2dc fp=0xc000075658 sp=0xc0000753e8 pc=0xdc105c
           github.com/containers/image/v5/copy.(*imageCopier).copyLayer.func3(0xc000132100, 0xc000681680?, {{0xc0004d1180, 0x47}, 0x2b8528, {0x0, 0x0, 0x0}, 0xc000126180, {0xc0005fc140, ...}, ...}, ...)
           	/var/tmp/go/src/github.com/containers/podman/vendor/github.com[/containers/image/v5/copy/single.go:847](https://github.com/containers/image/blob/985b57d9f76b661562b845c2215d2e03283d038e/v5/copy/single.go#L847) +0x49d fp=0xc000075978 sp=0xc000075658 pc=0xdbf7bd
           github.com/containers/image/v5/copy.(*imageCopier).copyLayer(0xc000132100, {0x2036d78, 0xc000681680}, {{0xc0004d1180, 0x47}, 0x2b8528, {0x0, 0x0, 0x0}, 0xc000126180, ...}, ...)
           	/var/tmp/go/src/github.com/containers/podman/vendor/github.com[/containers/image/v5/copy/single.go:879](https://github.com/containers/image/blob/985b57d9f76b661562b845c2215d2e03283d038e/v5/copy/single.go#L879) +0xaef fp=0xc000075ca0 sp=0xc000075978 pc=0xdbedef
           github.com/containers/image/v5/copy.(*imageCopier).copyLayers.func1(0x0, {{0xc0004d1180, 0x47}, 0x2b8528, {0x0, 0x0, 0x0}, 0xc000126180, {0xc0005fc140, 0x35}, ...}, ...)
           	/var/tmp/go/src/github.com/containers/podman/vendor/github.com[/containers/image/v5/copy/single.go:478](https://github.com/containers/image/blob/985b57d9f76b661562b845c2215d2e03283d038e/v5/copy/single.go#L478) +0x393 fp=0xc000075f48 sp=0xc000075ca0 pc=0xdbcbb3
           github.com/containers/image/v5/copy.(*imageCopier).copyLayers.func2.gowrap3()
           	/var/tmp/go/src/github.com/containers/podman/vendor/github.com[/containers/image/v5/copy/single.go:518](https://github.com/containers/image/blob/985b57d9f76b661562b845c2215d2e03283d038e/v5/copy/single.go#L518) +0x66 fp=0xc000075fe0 sp=0xc000075f48 pc=0xdbc726
           runtime.goexit({})
           	/usr/lib/golang/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc000075fe8 sp=0xc000075fe0 pc=0x480681
           created by github.com/containers/image/v5/copy.(*imageCopier).copyLayers.func2 in goroutine 1
           	/var/tmp/go/src/github.com/containers/podman/vendor/github.com[/containers/image/v5/copy/single.go:518](https://github.com/containers/image/blob/985b57d9f76b661562b845c2215d2e03283d038e/v5/copy/single.go#L518) +0x14a

And this seems to wait on the reading side but it is hard to tell whenever more traffic is expected or we just wait for the server to close the connection.


I guess we have some options here, use host network like we do for other registry setups or switch to slirp4netns (revert 4dc5708). Not sure if there is way to avoid the splice path for local connections? I guess one could bind 0.0.0.0 and then use the host ip as registry ip instead of localhost but this seems far more complicated.

@Luap99 Luap99 added network Networking related issue or feature pasta pasta(1) bugs or features labels Oct 9, 2024
@Luap99
Copy link
Member

Luap99 commented Oct 9, 2024

@sbrivio-rh @dgibson Are you guys already aware of any issues in the local splice path?

@sbrivio-rh
Copy link
Collaborator

@sbrivio-rh @dgibson Are you guys already aware of any issues in the local splice path?

Gosh, no, not really. No chances to run this with pasta's --trace I suppose...?

@sbrivio-rh
Copy link
Collaborator

Not sure if there is way to avoid the splice path for local connections? I guess one could bind 0.0.0.0 and then use the host ip as registry ip instead of localhost but this seems far more complicated.

Right, that would be pretty much the only way I can think of.

@Luap99
Copy link
Member

Luap99 commented Oct 10, 2024

@sbrivio-rh @dgibson Are you guys already aware of any issues in the local splice path?

Gosh, no, not really. No chances to run this with pasta's --trace I suppose...?

We can certainly try adding this but the question how much the slow down of the writes is going to impact this race condition here but I guess here is only one way to find out.

Luap99 added a commit to Luap99/libpod that referenced this issue Oct 10, 2024
Run pasta with --trace and a log file to see if the hangs are caused by
pasta not correctly closing connections as assumed in containers#24219.

As the log is super verbose do not log it by default so I added some
extra logic to make sure it is only logged when the test fails.

Signed-off-by: Paul Holzinger <[email protected]>
@Luap99
Copy link
Member

Luap99 commented Oct 10, 2024

#24225 should add --trace so hopefully it still reproduces with that

@Luap99
Copy link
Member

Luap99 commented Oct 21, 2024

Ok it finally flaked:
https://api.cirrus-ci.com/v1/artifact/task/6682078224318464/html/int-podman-debian-13-rootless-host-sqlite.log.html#t--Podman-pull-podman-pull-and-decrypt-From-local-registry--1

pasting the full log here as CI logs get deleted after some time

 0.0020: info:    No interfaces with usable IPv6 routes
           0.0020: info:    Couldn't pick external interface: disabling IPv6
           0.0035: WARNING: Couldn't get any nameserver address
           0.0036: info:    Template interface: ens4 (IPv4)
           0.0036: info:    Namespace interface: ens4
           0.0036: info:    MAC:
           0.0036: info:        host: 9a:55:9a:55:9a:55
           0.0036: info:    DHCP:
           0.0036: info:        assign: 10.128.15.211
           0.0036: info:        mask: 255.255.255.255
           0.0036: info:        router: 10.128.0.1
           0.0036: info:    DNS search list:
           0.0036: info:        us-central1-a.c.libpod-218412.internal
           0.0036: info:        c.libpod-218412.internal
           0.0036: info:        google.internal
           0.0185:          SO_PEEK_OFF supported
           0.0199:          pasta: epoll event on /dev/net/tun device 9 (events: 0x00000001)
           0.1360:          pasta: epoll event on /dev/net/tun device 9 (events: 0x00000001)
           0.3761:          pasta: epoll event on listening TCP socket 6 (events: 0x00000001)
           0.3761:          Flow 0 (NEW): FREE -> NEW
           0.3761:          Flow 0 (INI): NEW -> INI
           0.3761:          Flow 0 (INI): HOST [127.0.0.1]:59324 -> [0.0.0.0]:5012 => ?
           0.3762:          Flow 0 (TGT): INI -> TGT
           0.3762:          Flow 0 (TGT): HOST [127.0.0.1]:59324 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.3762:          Flow 0 (TCP connection (spliced)): TGT -> TYPED
           0.3762:          Flow 0 (TCP connection (spliced)): HOST [127.0.0.1]:59324 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.3770:          Flow 0 (TCP connection (spliced)): event at tcp_splice_connect:377
           0.3770:          Flow 0 (TCP connection (spliced)): SPLICE_CONNECT
           0.3771:          Flow 0 (TCP connection (spliced)): TYPED -> ACTIVE
           0.3771:          Flow 0 (TCP connection (spliced)): HOST [127.0.0.1]:59324 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.3771:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000004)
           0.3771:          Flow 0 (TCP connection (spliced)): cannot set 0->1 pipe size to 524288
           0.3771:          Flow 0 (TCP connection (spliced)): cannot set 1->0 pipe size to 524288
           0.3771:          Flow 0 (TCP connection (spliced)): event at tcp_splice_connect_finish:332
           0.3771:          Flow 0 (TCP connection (spliced)): SPLICE_ESTABLISHED
           0.3771:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:489
           0.3771:          Flow 0 (TCP connection (spliced)): -1 from read-side call
           0.3771:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.3804:          pasta: epoll event on connected spliced TCP socket 81 (events: 0x00000001)
           0.3804:          Flow 0 (TCP connection (spliced)): 245 from read-side call
           0.3805:          Flow 0 (TCP connection (spliced)): 245 from write-side call (passed 245)
           0.3810:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00002001)
           0.3810:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:496
           0.3810:          Flow 0 (TCP connection (spliced)): FIN_RCVD_1
           0.3810:          Flow 0 (TCP connection (spliced)): 103 from read-side call
           0.3811:          Flow 0 (TCP connection (spliced)): 103 from write-side call (passed 103)
           0.3811:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00002001)
           0.3811:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:496
           0.3811:          Flow 0 (TCP connection (spliced)): 0 from read-side call
           0.3811:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.3811:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:603
           0.3811:          Flow 0 (TCP connection (spliced)): FIN_SENT_0
           0.3815:          pasta: epoll event on connected spliced TCP socket 81 (events: 0x00002011)
           0.3815:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:496
           0.3815:          Flow 0 (TCP connection (spliced)): FIN_RCVD_0
           0.3815:          Flow 0 (TCP connection (spliced)): 0 from read-side call
           0.3815:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.3816:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:603
           0.3816:          Flow 0 (TCP connection (spliced)): FIN_SENT_1
           0.3816:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_sock_handler:624
           0.3816:          Flow 0 (TCP connection (spliced)): RCVLOWAT_ACT_1
           0.3818:          Flow 0 (TCP connection (spliced)): CLOSED
           0.3821:          Flow 0 (FREE): ACTIVE -> FREE
           0.3821:          Flow 0 (FREE): HOST [127.0.0.1]:59324 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.3838:          pasta: epoll event on listening TCP socket 6 (events: 0x00000001)
           0.3838:          Flow 0 (NEW): FREE -> NEW
           0.3838:          Flow 0 (INI): NEW -> INI
           0.3838:          Flow 0 (INI): HOST [127.0.0.1]:59332 -> [0.0.0.0]:5012 => ?
           0.3838:          Flow 0 (TGT): INI -> TGT
           0.3838:          Flow 0 (TGT): HOST [127.0.0.1]:59332 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.3838:          Flow 0 (TCP connection (spliced)): TGT -> TYPED
           0.3838:          Flow 0 (TCP connection (spliced)): HOST [127.0.0.1]:59332 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.3839:          Flow 0 (TCP connection (spliced)): event at tcp_splice_connect:377
           0.3839:          Flow 0 (TCP connection (spliced)): SPLICE_CONNECT
           0.3840:          Flow 0 (TCP connection (spliced)): TYPED -> ACTIVE
           0.3840:          Flow 0 (TCP connection (spliced)): HOST [127.0.0.1]:59332 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.3840:          pasta: epoll event on connected spliced TCP socket 50 (events: 0x00000004)
           0.3840:          Flow 0 (TCP connection (spliced)): cannot set 0->1 pipe size to 524288
           0.3840:          Flow 0 (TCP connection (spliced)): cannot set 1->0 pipe size to 524288
           0.3840:          Flow 0 (TCP connection (spliced)): event at tcp_splice_connect_finish:332
           0.3840:          Flow 0 (TCP connection (spliced)): SPLICE_ESTABLISHED
           0.3840:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:489
           0.3840:          Flow 0 (TCP connection (spliced)): -1 from read-side call
           0.3840:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.3856:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.3856:          Flow 0 (TCP connection (spliced)): 178 from read-side call
           0.3857:          Flow 0 (TCP connection (spliced)): 178 from write-side call (passed 178)
           0.3879:          pasta: epoll event on connected spliced TCP socket 50 (events: 0x00000001)
           0.3879:          Flow 0 (TCP connection (spliced)): 204 from read-side call
           0.3880:          Flow 0 (TCP connection (spliced)): 204 from write-side call (passed 204)
           0.3884:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00002001)
           0.3884:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:496
           0.3885:          Flow 0 (TCP connection (spliced)): FIN_RCVD_0
           0.3885:          Flow 0 (TCP connection (spliced)): 0 from read-side call
           0.3885:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.3886:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:603
           0.3886:          Flow 0 (TCP connection (spliced)): FIN_SENT_1
           0.3886:          pasta: epoll event on connected spliced TCP socket 50 (events: 0x00002011)
           0.3886:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:496
           0.3886:          Flow 0 (TCP connection (spliced)): FIN_RCVD_1
           0.3886:          Flow 0 (TCP connection (spliced)): 0 from read-side call
           0.3886:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.3887:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:603
           0.3887:          Flow 0 (TCP connection (spliced)): FIN_SENT_0
           0.3887:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_sock_handler:624
           0.3887:          Flow 0 (TCP connection (spliced)): RCVLOWAT_ACT_1
           0.3887:          Flow 0 (TCP connection (spliced)): CLOSED
           0.3887:          Flow 0 (FREE): ACTIVE -> FREE
           0.3888:          Flow 0 (FREE): HOST [127.0.0.1]:59332 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.3891:          pasta: epoll event on listening TCP socket 6 (events: 0x00000001)
           0.3891:          Flow 0 (NEW): FREE -> NEW
           0.3891:          Flow 0 (INI): NEW -> INI
           0.3891:          Flow 0 (INI): HOST [127.0.0.1]:59348 -> [0.0.0.0]:5012 => ?
           0.3891:          Flow 0 (TGT): INI -> TGT
           0.3891:          Flow 0 (TGT): HOST [127.0.0.1]:59348 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.3891:          Flow 0 (TCP connection (spliced)): TGT -> TYPED
           0.3891:          Flow 0 (TCP connection (spliced)): HOST [127.0.0.1]:59348 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.3893:          Flow 0 (TCP connection (spliced)): event at tcp_splice_connect:377
           0.3893:          Flow 0 (TCP connection (spliced)): SPLICE_CONNECT
           0.3893:          Flow 0 (TCP connection (spliced)): TYPED -> ACTIVE
           0.3893:          Flow 0 (TCP connection (spliced)): HOST [127.0.0.1]:59348 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.3893:          pasta: epoll event on connected spliced TCP socket 51 (events: 0x00000004)
           0.3893:          Flow 0 (TCP connection (spliced)): cannot set 0->1 pipe size to 524288
           0.3893:          Flow 0 (TCP connection (spliced)): cannot set 1->0 pipe size to 524288
           0.3893:          Flow 0 (TCP connection (spliced)): event at tcp_splice_connect_finish:332
           0.3893:          Flow 0 (TCP connection (spliced)): SPLICE_ESTABLISHED
           0.3894:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:489
           0.3894:          Flow 0 (TCP connection (spliced)): 239 from read-side call
           0.3894:          Flow 0 (TCP connection (spliced)): 239 from write-side call (passed 239)
           0.3936:          pasta: epoll event on connected spliced TCP socket 51 (events: 0x00000001)
           0.3937:          Flow 0 (TCP connection (spliced)): 581 from read-side call
           0.3937:          Flow 0 (TCP connection (spliced)): 581 from write-side call (passed 581)
           0.3946:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.3946:          Flow 0 (TCP connection (spliced)): 561 from read-side call
           0.3947:          Flow 0 (TCP connection (spliced)): 561 from write-side call (passed 561)
           0.4063:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4063:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4063:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4064:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4064:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4064:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4068:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4068:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4068:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4120:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4120:          Flow 0 (TCP connection (spliced)): 32774 from read-side call
           0.4120:          Flow 0 (TCP connection (spliced)): 32774 from write-side call (passed 32774)
           0.4120:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4120:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4121:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4125:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4125:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4125:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4125:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4125:          Flow 0 (TCP connection (spliced)): 28680 from read-side call
           0.4129:          Flow 0 (TCP connection (spliced)): 28680 from write-side call (passed 28680)
           0.4131:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4132:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.4132:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.4157:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4157:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4158:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4171:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4171:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4178:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4178:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4178:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4178:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4187:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4187:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.4188:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.4191:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4191:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.4192:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.4222:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4222:          Flow 0 (TCP connection (spliced)): 65552 from read-side call
           0.4223:          Flow 0 (TCP connection (spliced)): 65552 from write-side call (passed 65552)
           0.4223:          Flow 0 (TCP connection (spliced)): -1 from read-side call
           0.4223:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.4268:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4269:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.4269:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.4274:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4274:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4274:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4274:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4274:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4275:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4281:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4281:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4281:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4284:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4284:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4284:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4285:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4285:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4285:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4295:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4295:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4295:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4320:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4320:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4320:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4321:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4321:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4321:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4326:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4326:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4326:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4332:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4332:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4332:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4333:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4333:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4333:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4333:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4333:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4334:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4339:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4339:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4339:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4339:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4339:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4340:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4345:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4345:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4345:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4362:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4362:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4362:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4363:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4363:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4363:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4363:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4363:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4363:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4434:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4434:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4434:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4436:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4436:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4436:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4437:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4437:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4437:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4442:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4442:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4442:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4442:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4443:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4443:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4443:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4443:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4443:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4454:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4454:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4455:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4480:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4480:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4480:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4481:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4481:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4481:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4486:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4486:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4486:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4486:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4487:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4487:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4487:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4487:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4487:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4503:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4503:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4503:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4504:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4504:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4504:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4504:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4505:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4505:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4510:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4510:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4510:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4520:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4520:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4521:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4542:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4542:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4542:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4595:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4596:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4596:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4596:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4596:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4596:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4597:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4597:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4597:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4602:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4602:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4602:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4603:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4603:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4603:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4610:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4610:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4610:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4632:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4632:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4632:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4632:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4632:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4632:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4633:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4633:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4633:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4638:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4638:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4638:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4638:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4638:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4642:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4644:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4645:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4645:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4676:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4676:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4676:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4677:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4677:          Flow 0 (TCP connection (spliced)): 28680 from read-side call
           0.4677:          Flow 0 (TCP connection (spliced)): 28680 from write-side call (passed 28680)
           0.4681:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4682:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.4685:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.4693:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4694:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.4694:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.4714:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4714:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4714:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4736:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4736:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4736:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4756:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4757:          Flow 0 (TCP connection (spliced)): 65554 from read-side call
           0.4757:          Flow 0 (TCP connection (spliced)): 65554 from write-side call (passed 65554)
           0.4757:          Flow 0 (TCP connection (spliced)): -1 from read-side call
           0.4757:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.4765:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4765:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4765:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4766:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4766:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4766:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4766:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4766:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4766:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4792:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4792:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4792:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4792:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4792:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4793:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4798:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4799:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4799:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4804:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4804:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4804:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4805:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4805:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4805:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4805:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4805:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4805:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4827:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4827:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.4827:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.4842:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4842:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.4848:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.4848:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4848:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.4848:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.4906:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4906:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.4906:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.4955:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4956:          Flow 0 (TCP connection (spliced)): 65552 from read-side call
           0.4964:          Flow 0 (TCP connection (spliced)): 65552 from write-side call (passed 65552)
           0.4964:          Flow 0 (TCP connection (spliced)): -1 from read-side call
           0.4964:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.4988:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.4989:          Flow 0 (TCP connection (spliced)): 98328 from read-side call
           0.4989:          Flow 0 (TCP connection (spliced)): 98328 from write-side call (passed 98328)
           0.4989:          Flow 0 (TCP connection (spliced)): -1 from read-side call
           0.4989:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.5032:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5032:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5032:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5038:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5038:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.5038:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.5038:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5038:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.5039:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.5039:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5040:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.5040:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.5063:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5063:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.5064:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.5064:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5064:          Flow 0 (TCP connection (spliced)): 28680 from read-side call
           0.5065:          Flow 0 (TCP connection (spliced)): 28680 from write-side call (passed 28680)
           0.5069:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5069:          Flow 0 (TCP connection (spliced)): 32774 from read-side call
           0.5069:          Flow 0 (TCP connection (spliced)): 32774 from write-side call (passed 32774)
           0.5070:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5070:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.5070:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.5095:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5095:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5095:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5105:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5106:          Flow 0 (TCP connection (spliced)): 65550 from read-side call
           0.5106:          Flow 0 (TCP connection (spliced)): 65550 from write-side call (passed 65550)
           0.5107:          Flow 0 (TCP connection (spliced)): -1 from read-side call
           0.5107:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.5107:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5107:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.5107:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.5129:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5129:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.5129:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.5130:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5130:          Flow 0 (TCP connection (spliced)): 28680 from read-side call
           0.5130:          Flow 0 (TCP connection (spliced)): 28680 from write-side call (passed 28680)
           0.5134:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5134:          Flow 0 (TCP connection (spliced)): 32774 from read-side call
           0.5134:          Flow 0 (TCP connection (spliced)): 32774 from write-side call (passed 32774)
           0.5135:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5135:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.5135:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.5167:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5167:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.5168:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.5168:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5168:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.5168:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.5169:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5169:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.5169:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.5193:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5194:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.5194:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.5195:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5195:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.5196:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.5204:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5205:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.5205:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.5209:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5209:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.5209:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.5209:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5209:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.5210:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.5210:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5210:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.5210:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.5237:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5237:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5243:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5243:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5243:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5243:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5247:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5248:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5248:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5266:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5266:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5266:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5312:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5312:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5312:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5316:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5316:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5316:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5352:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5352:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5352:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5362:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5362:          Flow 0 (TCP connection (spliced)): 65552 from read-side call
           0.5363:          Flow 0 (TCP connection (spliced)): 65552 from write-side call (passed 65552)
           0.5363:          Flow 0 (TCP connection (spliced)): -1 from read-side call
           0.5363:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.5394:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5394:          Flow 0 (TCP connection (spliced)): 65552 from read-side call
           0.5395:          Flow 0 (TCP connection (spliced)): 65552 from write-side call (passed 65552)
           0.5395:          Flow 0 (TCP connection (spliced)): -1 from read-side call
           0.5395:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.5427:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5427:          Flow 0 (TCP connection (spliced)): 32774 from read-side call
           0.5427:          Flow 0 (TCP connection (spliced)): 32774 from write-side call (passed 32774)
           0.5427:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5427:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.5427:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.5431:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5432:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.5432:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.5432:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5432:          Flow 0 (TCP connection (spliced)): 28680 from read-side call
           0.5432:          Flow 0 (TCP connection (spliced)): 28680 from write-side call (passed 28680)
           0.5439:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5440:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5440:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5492:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5493:          Flow 0 (TCP connection (spliced)): 32774 from read-side call
           0.5493:          Flow 0 (TCP connection (spliced)): 32774 from write-side call (passed 32774)
           0.5493:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5493:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.5493:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.5548:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5548:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.5548:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.5548:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5548:          Flow 0 (TCP connection (spliced)): 28680 from read-side call
           0.5548:          Flow 0 (TCP connection (spliced)): 28680 from write-side call (passed 28680)
           0.5577:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5577:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5578:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5593:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5593:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5599:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5646:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5646:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.5646:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.5669:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5670:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.5673:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.5677:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5677:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.5677:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.5682:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5683:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.5683:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.5683:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5683:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.5683:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.5684:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5684:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.5684:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.5689:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5690:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5693:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5703:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5704:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.5704:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.5705:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5705:          Flow 0 (TCP connection (spliced)): 28680 from read-side call
           0.5705:          Flow 0 (TCP connection (spliced)): 28680 from write-side call (passed 28680)
           0.5712:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5712:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5715:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5736:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5737:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5737:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5762:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5763:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.5763:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.5763:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5763:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.5763:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.5769:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5769:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.5769:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.5775:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5775:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.5775:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.5776:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5776:          Flow 0 (TCP connection (spliced)): 28678 from read-side call
           0.5776:          Flow 0 (TCP connection (spliced)): 28678 from write-side call (passed 28678)
           0.5777:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5777:          Flow 0 (TCP connection (spliced)): 2 from read-side call
           0.5777:          Flow 0 (TCP connection (spliced)): 2 from write-side call (passed 2)
           0.5809:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5809:          Flow 0 (TCP connection (spliced)): 32774 from read-side call
           0.5815:          Flow 0 (TCP connection (spliced)): 32774 from write-side call (passed 32774)
           0.5815:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5815:          Flow 0 (TCP connection (spliced)): 32778 from read-side call
           0.5815:          Flow 0 (TCP connection (spliced)): 32778 from write-side call (passed 32778)
           0.5829:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5829:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.5829:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.5830:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5830:          Flow 0 (TCP connection (spliced)): 28680 from read-side call
           0.5836:          Flow 0 (TCP connection (spliced)): 28680 from write-side call (passed 28680)
           0.5852:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5853:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5853:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5864:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5864:          Flow 0 (TCP connection (spliced)): 4096 from read-side call
           0.5864:          Flow 0 (TCP connection (spliced)): 4096 from write-side call (passed 4096)
           0.5865:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5865:          Flow 0 (TCP connection (spliced)): 28680 from read-side call
           0.5865:          Flow 0 (TCP connection (spliced)): 28680 from write-side call (passed 28680)
           0.5881:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5881:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5881:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5886:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5886:          Flow 0 (TCP connection (spliced)): 32776 from read-side call
           0.5887:          Flow 0 (TCP connection (spliced)): 32776 from write-side call (passed 32776)
           0.5887:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.5887:          Flow 0 (TCP connection (spliced)): 1332 from read-side call
           0.5887:          Flow 0 (TCP connection (spliced)): 1332 from write-side call (passed 1332)
           0.6330:          pasta: epoll event on connected spliced TCP socket 51 (events: 0x00000001)
           0.6330:          Flow 0 (TCP connection (spliced)): 585 from read-side call
           0.6331:          Flow 0 (TCP connection (spliced)): 585 from write-side call (passed 585)
           0.6334:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.6334:          Flow 0 (TCP connection (spliced)): 629 from read-side call
           0.6334:          Flow 0 (TCP connection (spliced)): 629 from write-side call (passed 629)
           0.6377:          pasta: epoll event on connected spliced TCP socket 51 (events: 0x00000001)
           0.6377:          Flow 0 (TCP connection (spliced)): 397 from read-side call
           0.6401:          Flow 0 (TCP connection (spliced)): 397 from write-side call (passed 397)
           0.6423:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.6423:          Flow 0 (TCP connection (spliced)): 260 from read-side call
           0.6451:          Flow 0 (TCP connection (spliced)): 260 from write-side call (passed 260)
           0.6451:          pasta: epoll event on connected spliced TCP socket 51 (events: 0x00000001)
           0.6451:          Flow 0 (TCP connection (spliced)): 211 from read-side call
           0.6451:          Flow 0 (TCP connection (spliced)): 211 from write-side call (passed 211)
           0.6457:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.6457:          Flow 0 (TCP connection (spliced)): 239 from read-side call
           0.6457:          Flow 0 (TCP connection (spliced)): 239 from write-side call (passed 239)
           0.6488:          pasta: epoll event on connected spliced TCP socket 51 (events: 0x00000001)
           0.6488:          Flow 0 (TCP connection (spliced)): 581 from read-side call
           0.6493:          Flow 0 (TCP connection (spliced)): 581 from write-side call (passed 581)
           0.6493:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.6494:          Flow 0 (TCP connection (spliced)): 1158 from read-side call
           0.6516:          Flow 0 (TCP connection (spliced)): 1158 from write-side call (passed 1158)
           0.6543:          pasta: epoll event on connected spliced TCP socket 51 (events: 0x00000001)
           0.6543:          Flow 0 (TCP connection (spliced)): 579 from read-side call
           0.6544:          Flow 0 (TCP connection (spliced)): 579 from write-side call (passed 579)
           0.6548:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.6548:          Flow 0 (TCP connection (spliced)): 627 from read-side call
           0.6548:          Flow 0 (TCP connection (spliced)): 627 from write-side call (passed 627)
           0.6578:          pasta: epoll event on connected spliced TCP socket 51 (events: 0x00000001)
           0.6578:          Flow 0 (TCP connection (spliced)): 397 from read-side call
           0.6579:          Flow 0 (TCP connection (spliced)): 397 from write-side call (passed 397)
           0.6588:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.6588:          Flow 0 (TCP connection (spliced)): 1741 from read-side call
           0.6589:          Flow 0 (TCP connection (spliced)): 1741 from write-side call (passed 1741)
           0.6634:          pasta: epoll event on connected spliced TCP socket 51 (events: 0x00000001)
           0.6634:          Flow 0 (TCP connection (spliced)): 401 from read-side call
           0.6634:          Flow 0 (TCP connection (spliced)): 401 from write-side call (passed 401)
           0.6638:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00002001)
           0.6638:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:496
           0.6638:          Flow 0 (TCP connection (spliced)): FIN_RCVD_0
           0.6638:          Flow 0 (TCP connection (spliced)): 0 from read-side call
           0.6638:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.6639:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:603
           0.6639:          Flow 0 (TCP connection (spliced)): FIN_SENT_1
           0.6640:          pasta: epoll event on connected spliced TCP socket 51 (events: 0x00002011)
           0.6640:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:496
           0.6640:          Flow 0 (TCP connection (spliced)): FIN_RCVD_1
           0.6640:          Flow 0 (TCP connection (spliced)): 0 from read-side call
           0.6640:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.6641:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:603
           0.6641:          Flow 0 (TCP connection (spliced)): FIN_SENT_0
           0.6641:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_sock_handler:624
           0.6641:          Flow 0 (TCP connection (spliced)): RCVLOWAT_ACT_1
           0.6641:          Flow 0 (TCP connection (spliced)): CLOSED
           0.6641:          Flow 0 (FREE): ACTIVE -> FREE
           0.6641:          Flow 0 (FREE): HOST [127.0.0.1]:59348 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.6840:          pasta: epoll event on /dev/net/tun device 9 (events: 0x00000001)
           0.9010:          pasta: epoll event on listening TCP socket 6 (events: 0x00000001)
           0.9010:          Flow 0 (NEW): FREE -> NEW
           0.9010:          Flow 0 (INI): NEW -> INI
           0.9010:          Flow 0 (INI): HOST [127.0.0.1]:59350 -> [0.0.0.0]:5012 => ?
           0.9010:          Flow 0 (TGT): INI -> TGT
           0.9010:          Flow 0 (TGT): HOST [127.0.0.1]:59350 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.9010:          Flow 0 (TCP connection (spliced)): TGT -> TYPED
           0.9010:          Flow 0 (TCP connection (spliced)): HOST [127.0.0.1]:59350 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.9011:          Flow 0 (TCP connection (spliced)): event at tcp_splice_connect:377
           0.9011:          Flow 0 (TCP connection (spliced)): SPLICE_CONNECT
           0.9011:          Flow 0 (TCP connection (spliced)): TYPED -> ACTIVE
           0.9011:          Flow 0 (TCP connection (spliced)): HOST [127.0.0.1]:59350 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.9011:          pasta: epoll event on connected spliced TCP socket 52 (events: 0x00000004)
           0.9011:          Flow 0 (TCP connection (spliced)): cannot set 0->1 pipe size to 524288
           0.9012:          Flow 0 (TCP connection (spliced)): cannot set 1->0 pipe size to 524288
           0.9012:          Flow 0 (TCP connection (spliced)): event at tcp_splice_connect_finish:332
           0.9012:          Flow 0 (TCP connection (spliced)): SPLICE_ESTABLISHED
           0.9012:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:489
           0.9012:          Flow 0 (TCP connection (spliced)): -1 from read-side call
           0.9012:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.9015:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.9015:          Flow 0 (TCP connection (spliced)): 245 from read-side call
           0.9015:          Flow 0 (TCP connection (spliced)): 245 from write-side call (passed 245)
           0.9016:          pasta: epoll event on connected spliced TCP socket 52 (events: 0x00000001)
           0.9017:          Flow 0 (TCP connection (spliced)): 103 from read-side call
           0.9017:          Flow 0 (TCP connection (spliced)): 103 from write-side call (passed 103)
           0.9017:          pasta: epoll event on connected spliced TCP socket 52 (events: 0x00002001)
           0.9017:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:496
           0.9017:          Flow 0 (TCP connection (spliced)): FIN_RCVD_1
           0.9017:          Flow 0 (TCP connection (spliced)): 0 from read-side call
           0.9017:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.9017:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:603
           0.9017:          Flow 0 (TCP connection (spliced)): FIN_SENT_0
           0.9018:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00002011)
           0.9018:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:496
           0.9018:          Flow 0 (TCP connection (spliced)): FIN_RCVD_0
           0.9018:          Flow 0 (TCP connection (spliced)): 0 from read-side call
           0.9018:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.9018:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:603
           0.9018:          Flow 0 (TCP connection (spliced)): FIN_SENT_1
           0.9019:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_sock_handler:624
           0.9019:          Flow 0 (TCP connection (spliced)): RCVLOWAT_ACT_1
           0.9019:          Flow 0 (TCP connection (spliced)): CLOSED
           0.9019:          Flow 0 (FREE): ACTIVE -> FREE
           0.9019:          Flow 0 (FREE): HOST [127.0.0.1]:59350 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.9023:          pasta: epoll event on listening TCP socket 6 (events: 0x00000001)
           0.9023:          Flow 0 (NEW): FREE -> NEW
           0.9023:          Flow 0 (INI): NEW -> INI
           0.9023:          Flow 0 (INI): HOST [127.0.0.1]:59354 -> [0.0.0.0]:5012 => ?
           0.9023:          Flow 0 (TGT): INI -> TGT
           0.9023:          Flow 0 (TGT): HOST [127.0.0.1]:59354 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.9023:          Flow 0 (TCP connection (spliced)): TGT -> TYPED
           0.9023:          Flow 0 (TCP connection (spliced)): HOST [127.0.0.1]:59354 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.9024:          Flow 0 (TCP connection (spliced)): event at tcp_splice_connect:377
           0.9024:          Flow 0 (TCP connection (spliced)): SPLICE_CONNECT
           0.9024:          Flow 0 (TCP connection (spliced)): TYPED -> ACTIVE
           0.9024:          Flow 0 (TCP connection (spliced)): HOST [127.0.0.1]:59354 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.9024:          pasta: epoll event on connected spliced TCP socket 53 (events: 0x00000004)
           0.9024:          Flow 0 (TCP connection (spliced)): cannot set 0->1 pipe size to 524288
           0.9025:          Flow 0 (TCP connection (spliced)): cannot set 1->0 pipe size to 524288
           0.9025:          Flow 0 (TCP connection (spliced)): event at tcp_splice_connect_finish:332
           0.9025:          Flow 0 (TCP connection (spliced)): SPLICE_ESTABLISHED
           0.9025:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:489
           0.9025:          Flow 0 (TCP connection (spliced)): 178 from read-side call
           0.9025:          Flow 0 (TCP connection (spliced)): 178 from write-side call (passed 178)
           0.9042:          pasta: epoll event on connected spliced TCP socket 53 (events: 0x00000001)
           0.9043:          Flow 0 (TCP connection (spliced)): 204 from read-side call
           0.9043:          Flow 0 (TCP connection (spliced)): 204 from write-side call (passed 204)
           0.9049:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00002001)
           0.9049:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:496
           0.9049:          Flow 0 (TCP connection (spliced)): FIN_RCVD_0
           0.9049:          Flow 0 (TCP connection (spliced)): 0 from read-side call
           0.9049:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.9049:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:603
           0.9049:          Flow 0 (TCP connection (spliced)): FIN_SENT_1
           0.9051:          pasta: epoll event on connected spliced TCP socket 53 (events: 0x00002011)
           0.9051:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:496
           0.9051:          Flow 0 (TCP connection (spliced)): FIN_RCVD_1
           0.9051:          Flow 0 (TCP connection (spliced)): 0 from read-side call
           0.9051:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.9052:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:603
           0.9052:          Flow 0 (TCP connection (spliced)): FIN_SENT_0
           0.9052:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_sock_handler:624
           0.9052:          Flow 0 (TCP connection (spliced)): RCVLOWAT_ACT_1
           0.9052:          Flow 0 (TCP connection (spliced)): CLOSED
           0.9052:          Flow 0 (FREE): ACTIVE -> FREE
           0.9052:          Flow 0 (FREE): HOST [127.0.0.1]:59354 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.9056:          pasta: epoll event on listening TCP socket 6 (events: 0x00000001)
           0.9056:          Flow 0 (NEW): FREE -> NEW
           0.9056:          Flow 0 (INI): NEW -> INI
           0.9056:          Flow 0 (INI): HOST [127.0.0.1]:59360 -> [0.0.0.0]:5012 => ?
           0.9056:          Flow 0 (TGT): INI -> TGT
           0.9056:          Flow 0 (TGT): HOST [127.0.0.1]:59360 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.9056:          Flow 0 (TCP connection (spliced)): TGT -> TYPED
           0.9056:          Flow 0 (TCP connection (spliced)): HOST [127.0.0.1]:59360 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.9057:          Flow 0 (TCP connection (spliced)): event at tcp_splice_connect:377
           0.9057:          Flow 0 (TCP connection (spliced)): SPLICE_CONNECT
           0.9057:          Flow 0 (TCP connection (spliced)): TYPED -> ACTIVE
           0.9057:          Flow 0 (TCP connection (spliced)): HOST [127.0.0.1]:59360 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           0.9057:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000004)
           0.9058:          Flow 0 (TCP connection (spliced)): cannot set 0->1 pipe size to 524288
           0.9058:          Flow 0 (TCP connection (spliced)): cannot set 1->0 pipe size to 524288
           0.9058:          Flow 0 (TCP connection (spliced)): event at tcp_splice_connect_finish:332
           0.9058:          Flow 0 (TCP connection (spliced)): SPLICE_ESTABLISHED
           0.9058:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:489
           0.9058:          Flow 0 (TCP connection (spliced)): -1 from read-side call
           0.9058:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.9060:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.9061:          Flow 0 (TCP connection (spliced)): 580 from read-side call
           0.9061:          Flow 0 (TCP connection (spliced)): 580 from write-side call (passed 580)
           0.9171:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9171:          Flow 0 (TCP connection (spliced)): 1833 from read-side call
           0.9171:          Flow 0 (TCP connection (spliced)): 1833 from write-side call (passed 1833)
           0.9185:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.9185:          Flow 0 (TCP connection (spliced)): 282 from read-side call
           0.9186:          Flow 0 (TCP connection (spliced)): 282 from write-side call (passed 282)
           0.9273:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9273:          Flow 0 (TCP connection (spliced)): 1033 from read-side call
           0.9274:          Flow 0 (TCP connection (spliced)): 1033 from write-side call (passed 1033)
           0.9309:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000001)
           0.9310:          Flow 0 (TCP connection (spliced)): 282 from read-side call
           0.9311:          Flow 0 (TCP connection (spliced)): 282 from write-side call (passed 282)
           0.9354:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9355:          Flow 0 (TCP connection (spliced)): 98737 from read-side call
           0.9356:          Flow 0 (TCP connection (spliced)): 98737 from write-side call (passed 98737)
           0.9356:          Flow 0 (TCP connection (spliced)): 229376 from read-side call
           0.9356:          Flow 0 (TCP connection (spliced)): 229376 from write-side call (passed 229376)
           0.9357:          Flow 0 (TCP connection (spliced)): 65536 from read-side call
           0.9358:          Flow 0 (TCP connection (spliced)): 65536 from write-side call (passed 65536)
           0.9358:          Flow 0 (TCP connection (spliced)): 163840 from read-side call
           0.9358:          Flow 0 (TCP connection (spliced)): 163840 from write-side call (passed 163840)
           0.9358:          Flow 0 (TCP connection (spliced)): 65536 from read-side call
           0.9359:          Flow 0 (TCP connection (spliced)): 65536 from write-side call (passed 65536)
           0.9359:          Flow 0 (TCP connection (spliced)): 98304 from read-side call
           0.9359:          Flow 0 (TCP connection (spliced)): 98304 from write-side call (passed 98304)
           0.9360:          Flow 0 (TCP connection (spliced)): 65536 from read-side call
           0.9360:          Flow 0 (TCP connection (spliced)): 65536 from write-side call (passed 65536)
           0.9360:          Flow 0 (TCP connection (spliced)): -1 from read-side call
           0.9360:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.9360:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9360:          Flow 0 (TCP connection (spliced)): 131072 from read-side call
           0.9361:          Flow 0 (TCP connection (spliced)): 131072 from write-side call (passed 131072)
           0.9361:          Flow 0 (TCP connection (spliced)): 32768 from read-side call
           0.9361:          Flow 0 (TCP connection (spliced)): 32768 from write-side call (passed 32768)
           0.9361:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9361:          Flow 0 (TCP connection (spliced)): 65536 from read-side call
           0.9361:          Flow 0 (TCP connection (spliced)): 65536 from write-side call (passed 65536)
           0.9361:          Flow 0 (TCP connection (spliced)): 32768 from read-side call
           0.9361:          Flow 0 (TCP connection (spliced)): 32768 from write-side call (passed 32768)
           0.9362:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9362:          Flow 0 (TCP connection (spliced)): 98304 from read-side call
           0.9362:          Flow 0 (TCP connection (spliced)): 98304 from write-side call (passed 98304)
           0.9362:          Flow 0 (TCP connection (spliced)): 32768 from read-side call
           0.9362:          Flow 0 (TCP connection (spliced)): 32768 from write-side call (passed 32768)
           0.9363:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9363:          Flow 0 (TCP connection (spliced)): 98304 from read-side call
           0.9363:          Flow 0 (TCP connection (spliced)): 98304 from write-side call (passed 98304)
           0.9363:          Flow 0 (TCP connection (spliced)): 32768 from read-side call
           0.9363:          Flow 0 (TCP connection (spliced)): 32768 from write-side call (passed 32768)
           0.9364:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9364:          Flow 0 (TCP connection (spliced)): 98304 from read-side call
           0.9364:          Flow 0 (TCP connection (spliced)): 98304 from write-side call (passed 98304)
           0.9364:          Flow 0 (TCP connection (spliced)): 32768 from read-side call
           0.9364:          Flow 0 (TCP connection (spliced)): 32768 from write-side call (passed 32768)
           0.9365:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9365:          Flow 0 (TCP connection (spliced)): 98304 from read-side call
           0.9365:          Flow 0 (TCP connection (spliced)): 98304 from write-side call (passed 98304)
           0.9366:          Flow 0 (TCP connection (spliced)): 131072 from read-side call
           0.9366:          Flow 0 (TCP connection (spliced)): 131072 from write-side call (passed 131072)
           0.9366:          Flow 0 (TCP connection (spliced)): 32768 from read-side call
           0.9366:          Flow 0 (TCP connection (spliced)): 32768 from write-side call (passed 32768)
           0.9366:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9366:          Flow 0 (TCP connection (spliced)): 32768 from read-side call
           0.9367:          Flow 0 (TCP connection (spliced)): 32768 from write-side call (passed 32768)
           0.9367:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9367:          Flow 0 (TCP connection (spliced)): 98304 from read-side call
           0.9368:          Flow 0 (TCP connection (spliced)): 98304 from write-side call (passed 98304)
           0.9368:          Flow 0 (TCP connection (spliced)): 131072 from read-side call
           0.9368:          Flow 0 (TCP connection (spliced)): 131072 from write-side call (passed 131072)
           0.9368:          Flow 0 (TCP connection (spliced)): 32768 from read-side call
           0.9368:          Flow 0 (TCP connection (spliced)): 32768 from write-side call (passed 32768)
           0.9369:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9369:          Flow 0 (TCP connection (spliced)): 131072 from read-side call
           0.9369:          Flow 0 (TCP connection (spliced)): 131072 from write-side call (passed 131072)
           0.9370:          Flow 0 (TCP connection (spliced)): 98304 from read-side call
           0.9370:          Flow 0 (TCP connection (spliced)): 98304 from write-side call (passed 98304)
           0.9370:          Flow 0 (TCP connection (spliced)): 32768 from read-side call
           0.9370:          Flow 0 (TCP connection (spliced)): 32768 from write-side call (passed 32768)
           0.9370:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9371:          Flow 0 (TCP connection (spliced)): 131072 from read-side call
           0.9371:          Flow 0 (TCP connection (spliced)): 131072 from write-side call (passed 131072)
           0.9371:          Flow 0 (TCP connection (spliced)): 98304 from read-side call
           0.9371:          Flow 0 (TCP connection (spliced)): 98304 from write-side call (passed 98304)
           0.9371:          Flow 0 (TCP connection (spliced)): 32768 from read-side call
           0.9371:          Flow 0 (TCP connection (spliced)): 32768 from write-side call (passed 32768)
           0.9371:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9372:          Flow 0 (TCP connection (spliced)): 32768 from read-side call
           0.9372:          Flow 0 (TCP connection (spliced)): 32768 from write-side call (passed 32768)
           0.9372:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9372:          Flow 0 (TCP connection (spliced)): 65536 from read-side call
           0.9372:          Flow 0 (TCP connection (spliced)): 65536 from write-side call (passed 65536)
           0.9372:          Flow 0 (TCP connection (spliced)): 65536 from read-side call
           0.9372:          Flow 0 (TCP connection (spliced)): 65536 from write-side call (passed 65536)
           0.9372:          Flow 0 (TCP connection (spliced)): 32768 from read-side call
           0.9373:          Flow 0 (TCP connection (spliced)): 32768 from write-side call (passed 32768)
           0.9373:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9373:          Flow 0 (TCP connection (spliced)): 98304 from read-side call
           0.9373:          Flow 0 (TCP connection (spliced)): 33615 from write-side call (passed 98304)
           0.9374:          Flow 0 (TCP connection (spliced)): -1 from read-side call
           0.9374:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.9374:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:580
           0.9374:          Flow 0 (TCP connection (spliced)): OUT_WAIT_0
           0.9375:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9375:          Flow 0 (TCP connection (spliced)): 32768 from read-side call
           0.9376:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 32768)
           0.9376:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:580
           0.9383:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000004)
           0.9384:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:489
           0.9384:          Flow 0 (TCP connection (spliced)): ~OUT_WAIT_0
           0.9384:          Flow 0 (TCP connection (spliced)): 1320 from read-side call
           0.9384:          Flow 0 (TCP connection (spliced)): 1320 from write-side call (passed 1320)
           1.1640:          pasta: epoll event on /dev/net/tun device 9 (events: 0x00000001)
           1.1641:          TCP (spliced): cannot set pool pipe size to 524288
           1.1642:          TCP (spliced): cannot set pool pipe size to 524288
           1.1642:          TCP (spliced): cannot set pool pipe size to 524288
           1.1642:          TCP (spliced): cannot set pool pipe size to 524288
           1.1642:          TCP (spliced): cannot set pool pipe size to 524288
           1.1642:          TCP (spliced): cannot set pool pipe size to 524288
           1.1642:          TCP (spliced): cannot set pool pipe size to 524288
           1.1642:          TCP (spliced): cannot set pool pipe size to 524288
           1.1642:          TCP (spliced): cannot set pool pipe size to 524288
           1.1642:          TCP (spliced): cannot set pool pipe size to 524288
           1.1642:          TCP (spliced): cannot set pool pipe size to 524288
           1.1643:          TCP (spliced): cannot set pool pipe size to 524288
           1.1643:          TCP (spliced): cannot set pool pipe size to 524288
           1.1643:          TCP (spliced): cannot set pool pipe size to 524288
           1.1643:          TCP (spliced): cannot set pool pipe size to 524288
           1.1643:          TCP (spliced): cannot set pool pipe size to 524288
           1.1643:          TCP (spliced): cannot set pool pipe size to 524288
           1.1643:          TCP (spliced): cannot set pool pipe size to 524288
           1.1643:          TCP (spliced): cannot set pool pipe size to 524288
           1.1643:          TCP (spliced): cannot set pool pipe size to 524288
           1.1643:          TCP (spliced): cannot set pool pipe size to 524288
           1.1643:          TCP (spliced): cannot set pool pipe size to 524288
           1.1644:          TCP (spliced): cannot set pool pipe size to 524288
           1.1644:          TCP (spliced): cannot set pool pipe size to 524288
           1.1644:          TCP (spliced): cannot set pool pipe size to 524288
           1.1644:          TCP (spliced): cannot set pool pipe size to 524288
           1.1644:          TCP (spliced): cannot set pool pipe size to 524288
           1.1644:          TCP (spliced): cannot set pool pipe size to 524288
           1.1644:          TCP (spliced): cannot set pool pipe size to 524288
           1.1644:          TCP (spliced): cannot set pool pipe size to 524288
           1.1645:          TCP (spliced): cannot set pool pipe size to 524288
           1.1645:          TCP (spliced): cannot set pool pipe size to 524288
           1.1645:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           1.1645:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           1.3440:          pasta: epoll event on /dev/net/tun device 9 (events: 0x00000001)
           2.2109:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           2.2110:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           2.2110:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           3.2151:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           3.2151:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           3.7906:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           4.4869:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           4.4870:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           4.4870:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           5.4839:          pasta: epoll event on /dev/net/tun device 9 (events: 0x00000001)
           5.5990:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           5.5997:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           5.5997:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           6.6000:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           6.6000:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           7.6006:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           7.6006:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           8.6009:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           8.6010:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           8.9323:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           9.2533:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           9.4306:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           9.5402:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           10.5410:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           10.5410:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           10.7098:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           10.7827:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           11.1543:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           11.4120:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           11.9829:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           11.9831:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           11.9831:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           12.9841:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           12.9841:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           13.9319:          pasta: epoll event on /dev/net/tun device 9 (events: 0x00000001)
           14.0682:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           14.0683:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           14.0683:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           14.1535:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           15.1545:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           15.1546:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           15.8024:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           16.8031:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           16.8032:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           17.6669:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           17.9541:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           17.9541:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           17.9541:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           18.0957:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           18.8704:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           19.0485:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           19.0485:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           19.0485:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           19.5102:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           19.7218:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           19.7249:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           19.9090:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           20.3151:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           20.3151:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           20.3151:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           20.3333:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           20.6819:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
[+0620s]   21.0828:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           21.0843:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           21.4078:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           21.4079:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           21.4079:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           21.7447:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           22.0759:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           22.4665:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           22.4666:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           22.4666:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           22.9172:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           22.9795:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           23.3131:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           23.6386:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           23.6386:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           23.6386:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           23.8399:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           23.9978:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           24.3611:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           24.5887:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           24.7962:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           24.7962:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           24.7962:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           25.1702:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           25.3500:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           25.5384:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           25.9217:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           25.9217:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           25.9217:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           26.1232:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           26.3303:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           26.7294:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           26.9003:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           27.0819:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           27.0819:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           27.0819:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           27.7971:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           28.0152:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           28.0342:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           28.2078:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           28.2079:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           28.2079:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           28.2182:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           28.4313:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           29.4320:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           29.4320:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           29.5179:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           29.9964:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           30.0600:          pasta: epoll event on /dev/net/tun device 9 (events: 0x00000001)
           30.5119:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           30.5120:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           30.5120:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           30.5631:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           30.7534:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           31.3819:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           31.6287:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           31.6287:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           31.6288:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           31.8111:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           32.3240:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           32.5021:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           32.6825:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           32.6826:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           32.6826:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           33.1540:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           33.2626:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           33.4866:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           33.9194:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           33.9194:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           33.9194:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           34.0069:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           34.3205:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           34.7094:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           35.6627:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           35.6627:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           35.6627:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           35.8820:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           35.9814:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           36.2286:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           36.3930:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           36.5919:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           37.5078:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           37.5078:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           37.5078:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           37.8759:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           38.1010:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           38.3130:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           38.5868:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           38.5868:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           38.5868:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           38.7740:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           38.8457:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           39.1865:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           40.1876:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           40.1876:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           40.2689:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           40.4006:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           41.4017:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           41.4017:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           42.4028:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           42.4028:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           43.4029:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           43.4029:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           44.4040:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           44.4040:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           45.4051:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           45.4052:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           46.4066:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           46.4067:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           47.4078:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           47.4078:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           48.2064:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           48.3348:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           49.3359:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           49.3360:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           49.3604:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           49.3674:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           50.3038:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           51.3041:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           51.3041:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           52.3052:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           52.3053:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           53.0779:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           53.0843:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           53.2444:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           53.9852:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           53.9853:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           53.9853:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           54.0053:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           54.0623:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           54.5077:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           54.5095:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           55.5100:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           55.5100:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           55.7531:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           56.7560:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           56.7560:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           56.9588:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           56.9680:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           57.1897:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           57.2004:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           57.8864:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           57.8864:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           57.8865:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           58.4736:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           58.9908:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           58.9908:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           58.9908:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           59.2204:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           59.8471:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           59.9773:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           60.6823:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           60.6823:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           60.6823:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           60.9507:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           61.9518:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           61.9519:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           62.0586:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           63.0597:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           63.0597:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           63.0633:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           63.1896:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           63.3400:          pasta: epoll event on /dev/net/tun device 9 (events: 0x00000001)
           64.0235:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           64.0292:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           64.4434:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           64.4434:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           64.4435:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           64.8605:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           65.8629:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           65.8629:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           66.5720:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           66.6975:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           66.7994:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           67.8001:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           67.8001:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           68.8011:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           68.8011:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           69.8022:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           69.8022:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           70.8033:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           70.8033:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           70.8651:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           70.8812:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           70.9830:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           70.9855:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           71.1467:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           71.1580:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           72.1592:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           72.1592:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           73.1600:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           73.1600:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           74.1604:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           74.1604:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           74.2050:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           74.2070:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           74.3139:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           74.3188:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           74.4529:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           74.4531:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           75.2569:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           75.2569:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           75.2569:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           75.7756:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           76.1620:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           76.2800:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           76.2800:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           76.2800:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           76.6406:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           76.7598:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           76.9701:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           77.9713:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           77.9713:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           78.4279:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           78.7277:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           79.2977:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           79.2979:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           79.2979:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           79.3999:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           79.7878:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           80.1606:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           80.1996:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           80.4591:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           80.4591:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           80.4591:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           80.7299:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           81.2234:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           81.4929:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           81.4930:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           81.4930:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           81.8125:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           81.8591:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           81.8622:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           82.5178:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           82.5179:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           82.5179:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           83.1786:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           83.3954:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           83.8893:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           83.8893:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           83.8893:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           83.8997:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           84.1162:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           84.6539:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           85.2500:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           85.2501:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           85.2501:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           85.2516:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           85.3323:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           85.9891:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           86.9899:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           86.9899:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           87.8487:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           87.9761:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           88.3254:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           88.3255:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           88.3255:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           88.4238:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           88.6475:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           89.0807:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           89.6278:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           89.6279:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           89.6279:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           89.6300:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           89.6322:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           90.2107:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           90.4180:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           90.7735:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           90.7735:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           90.7735:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_timer:766
           90.8313:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00002001)
           90.8313:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:496
           90.8313:          Flow 0 (TCP connection (spliced)): FIN_RCVD_0
           90.8313:          Flow 0 (TCP connection (spliced)): 0 from read-side call
           90.8313:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           90.8314:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:603
           90.8314:          Flow 0 (TCP connection (spliced)): FIN_SENT_1
           90.8318:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00002011)
           90.8318:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:496
           90.8318:          Flow 0 (TCP connection (spliced)): FIN_RCVD_1
           90.8318:          Flow 0 (TCP connection (spliced)): 0 from read-side call
           90.8320:          Flow 0 (TCP connection (spliced)): 97457 from write-side call (passed 524288)
           90.8320:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:603
           90.8320:          Flow 0 (TCP connection (spliced)): FIN_SENT_0
           90.8320:          Flow 0 (TCP connection (spliced)): flag at tcp_splice_sock_handler:624
           90.8320:          Flow 0 (TCP connection (spliced)): RCVLOWAT_ACT_1
           90.8321:          Flow 0 (TCP connection (spliced)): CLOSED
           90.8321:          Flow 0 (FREE): ACTIVE -> FREE
           90.8321:          Flow 0 (FREE): HOST [127.0.0.1]:59360 -> [0.0.0.0]:5012 => SPLICE [127.0.0.1]:0 -> [127.0.0.1]:5000
           90.8878:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           91.1896:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)
           91.4875:          pasta: epoll event on namespace inotify watch 10 (events: 0x00000001)

@Luap99
Copy link
Member

Luap99 commented Oct 21, 2024

           0.9373:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9373:          Flow 0 (TCP connection (spliced)): 98304 from read-side call
           0.9373:          Flow 0 (TCP connection (spliced)): 33615 from write-side call (passed 98304)
           0.9374:          Flow 0 (TCP connection (spliced)): -1 from read-side call
           0.9374:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.9374:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:580
           0.9374:          Flow 0 (TCP connection (spliced)): OUT_WAIT_0
           0.9375:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9375:          Flow 0 (TCP connection (spliced)): 32768 from read-side call
           0.9376:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 32768)
           0.9376:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:580
           0.9383:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000004)
           0.9384:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:489
           0.9384:          Flow 0 (TCP connection (spliced)): ~OUT_WAIT_0
           0.9384:          Flow 0 (TCP connection (spliced)): 1320 from read-side call
           0.9384:          Flow 0 (TCP connection (spliced)): 1320 from write-side call (passed 1320)
           1.1640:          pasta: epoll event on /dev/net/tun device 9 (events: 0x00000001)
           1.1641:          TCP (spliced): cannot set pool pipe size to 524288
           1.1642:          TCP (spliced): cannot set pool pipe size to 524288

After that there doesn't seem to be anything happening anymore with the flow, until the end where the connection gets closed (I assume because we kill the client after 90s which matches the time sin the log)

@sbrivio-rh
Copy link
Collaborator

sbrivio-rh commented Oct 21, 2024

First off, it's quite impressive that #24225 worked.

After that there doesn't seem to be anything happening anymore with the flow, until the end where the connection gets closed (I assume because we kill the client after 90s which matches the times in the log)

It's weird that we get no (socket) events at all after that.

I'm wondering if the fact that we create a bunch of pipes after (and set their size), to refill the poll of pre-created pipes, might cause some issue. By the way, these messages:

1.1641:          TCP (spliced): cannot set pool pipe size to 524288

are bogus. We can set the pipe size, it's just that I couldn't read the documentation of fcntl(2) when I added that check. I'll fix that in a bit.

Perhaps we can reproduce this by initiating a transfer early enough to be before that refilling operation, but making it last long enough as to complete after that.

@Luap99
Copy link
Member

Luap99 commented Oct 21, 2024

First off, it's quite impressive that #24225 worked.

Well I of course did test that it works locally first by introducing bogus errors so I am not that surprised it worked.

After that there doesn't seem to be anything happening anymore with the flow, until the end where the connection gets closed (I assume because we kill the client after 90s which matches the times in the log)

It's weird that we get no (socket) events at all after that.

Well as show in the go stack above it does a read() so it blocks as it waits for more data (not quite a read as the go runtime uses async io vie epoll so it is not a blocking read() call but just waiting for the epoll event)

One thing that is not clear from the go stack trace where it is stuck reading, i.e. at start/middle/end of a stream? I could maybe see the case where the server closed the connection and somehow pasta did not carry this close through to the client assuming that is possible?

@sbrivio-rh
Copy link
Collaborator

sbrivio-rh commented Oct 23, 2024

First off, it's quite impressive that #24225 worked.

Well I of course did test that it works locally first by introducing bogus errors so I am not that surprised it worked.

After that there doesn't seem to be anything happening anymore with the flow, until the end where the connection gets closed (I assume because we kill the client after 90s which matches the times in the log)

It's weird that we get no (socket) events at all after that.

Well as show in the go stack above it does a read() so it blocks as it waits for more data (not quite a read as the go runtime uses async io vie epoll so it is not a blocking read() call but just waiting for the epoll event)

One thing that is not clear from the go stack trace where it is stuck reading, i.e. at start/middle/end of a stream?

I'm not sure either. One interesting thing is that we transfer these 1320 bytes:

           0.9383:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000004)
           0.9384:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:489
           0.9384:          Flow 0 (TCP connection (spliced)): ~OUT_WAIT_0
           0.9384:          Flow 0 (TCP connection (spliced)): 1320 from read-side call
           0.9384:          Flow 0 (TCP connection (spliced)): 1320 from write-side call (passed 1320)

then we don't get any event for 90 seconds, until the client times out as you suggested, we signal the server that we are closing the connection (FIN/SHUT_WR), and then:

           90.8313:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00002001)
           90.8313:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:496
           90.8313:          Flow 0 (TCP connection (spliced)): FIN_RCVD_0
           90.8313:          Flow 0 (TCP connection (spliced)): 0 from read-side call
           90.8313:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           90.8314:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:603
           90.8314:          Flow 0 (TCP connection (spliced)): FIN_SENT_1
           90.8318:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00002011)
           90.8318:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:496
           90.8318:          Flow 0 (TCP connection (spliced)): FIN_RCVD_1
           90.8318:          Flow 0 (TCP connection (spliced)): 0 from read-side call
           90.8320:          Flow 0 (TCP connection (spliced)): 97457 from write-side call (passed 524288)

we try again to move bytes from the server (socket 54 is server-side) to the client (socket 49) and suddenly we find out that we have those 97457 bytes pending on the pipe, which we write to the client (too late).

The issue might come from the fact that, earlier, we had data to transfer to the client but we couldn't for a while:

           0.9373:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9373:          Flow 0 (TCP connection (spliced)): 98304 from read-side call
           0.9373:          Flow 0 (TCP connection (spliced)): 33615 from write-side call (passed 98304)
           0.9374:          Flow 0 (TCP connection (spliced)): -1 from read-side call
           0.9374:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
           0.9374:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:580
           0.9374:          Flow 0 (TCP connection (spliced)): OUT_WAIT_0
           0.9375:          pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
           0.9375:          Flow 0 (TCP connection (spliced)): 32768 from read-side call
           0.9376:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 32768)
           0.9376:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:580

as we filled up its buffer. So we waited (OUT_WAIT_0: 0 is the client), until the client told us it was ready again (EPOLLOUT):

           0.9383:          pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000004)
           0.9384:          Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:489
           0.9384:          Flow 0 (TCP connection (spliced)): ~OUT_WAIT_0
           0.9384:          Flow 0 (TCP connection (spliced)): 1320 from read-side call
           0.9384:          Flow 0 (TCP connection (spliced)): 1320 from write-side call (passed 1320)

and we read 1320 bytes, so we also tried to write 1320 bytes, which worked. But meanwhile, we read much more from the server (socket to pipe), and as a result we had more than those 1320 bytes. In this case, we should try to write more. And we keep counters, so we know how much, but actually who cares, the kernel knows as well, so we might just as well write out whatever we have on the pipe.

I might have an idea for a reproducer, I'll try that next. The fix (or at least a possible one) would be kind of obvious:

diff --git a/tcp_splice.c b/tcp_splice.c
index 9f5cc27..0967a5c 100644
--- a/tcp_splice.c
+++ b/tcp_splice.c
@@ -525,7 +525,11 @@ retry:
                        to_write = c->tcp.pipe_size;
                } else {
                        never_read = 0;
-                       to_write += readlen;
+                       if (fromsidei != evsidei)
+                               to_write = c->tcp.pipe_size;
+                       else
+                               to_write += readlen;
+
                        if (readlen >= (long)c->tcp.pipe_size * 90 / 100)
                                more = SPLICE_F_MORE;
 

I could maybe see the case where the server closed the connection and somehow pasta did not carry this close through to the client assuming that is possible?

It would be possible, yes, but the fact that we suddenly realise that we have bytes to transfer as the client closes the connection indicates that the client is waiting for some data before closing it (HTTP 1.1 connections are persistent by default, that is, clients normally need to close them).

@sbrivio-rh
Copy link
Collaborator

suddenly we find out that we have those 97457 bytes pending on the pipe

And by the way that's 98304 - 33615 + 32768, that is:

           0.9373:          Flow 0 (TCP connection (spliced)): 98304 from read-side call
           0.9373:          Flow 0 (TCP connection (spliced)): 33615 from write-side call (passed 98304)

plus:

           0.9375:          Flow 0 (TCP connection (spliced)): 32768 from read-side call
           0.9376:          Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 32768)

so I'm fairly confident that the issue is exactly what I described.

@sbrivio-rh
Copy link
Collaborator

Patch posted.

@Luap99
Copy link
Member

Luap99 commented Oct 29, 2024

@sbrivio-rh I see the patch is applied. Can you tag a new release soon so we can start getting this into the fedora/debian packages we use in CI?

@sbrivio-rh
Copy link
Collaborator

sbrivio-rh commented Oct 29, 2024

@sbrivio-rh I see the patch is applied. Can you tag a new release soon so we can start getting this into the fedora/debian packages we use in CI?

Yes, I wanted to do that yesterday/today (also to finally close #24045) but I've been waiting to see if I could merge https://archives.passt.top/passt-dev/[email protected]/ as well. Well, let me make a new release early (my time) tomorrow regardless of that.

@sbrivio-rh
Copy link
Collaborator

This is now fixed in updates for:

  • Debian unstable, passt_0.0~git20241030.ee7d0b6-1, but I've been waiting five hours now for my upload to be accepted into unstable (upload was processed at 12:51:50Z) and it didn't happen yet. I'll keep you posted...
  • Fedora 40
  • Fedora Rawhide

@Luap99
Copy link
Member

Luap99 commented Oct 30, 2024

Thanks, AFAIK there is still a kernel regression that will prevent CI from working anyways if we update our CI images now, #24374.
So I assume we will need to wait until this gets resolved in f40 before we can create new images that will pass in podman CI

@sbrivio-rh
Copy link
Collaborator

sbrivio-rh commented Oct 30, 2024

So I assume we will need to wait until this gets resolved in f40 before we can create new images that will pass in podman CI

Right, yes, I just checked: commit 306ed1728e84 ("netfilter: xtables: fix typo causing some targets not to load on IPv6") is not included in the 6.11.y branch yet, but it's in the patch queue, so it should end up in 6.11.6 (and Fedora 40's kernel-6.11.6-*.fc40).

By the way, I'm still working on the kernel fix for #24147. At the moment the patch looks a bit too big for -stable, though.

hswong3i pushed a commit to alvistack/passt-top-passt that referenced this issue Oct 31, 2024
…t read

In tcp_splice_sock_handler(), we try to calculate how much we can move
from the pipe to the writing socket: if we just read some bytes, we'll
use that amount, but if we haven't, we just try to empty the pipe.

However, if we just read something, that doesn't mean that that's all
the data we have on the pipe, as it's obvious from this sequence, where:

  pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
  Flow 0 (TCP connection (spliced)): 98304 from read-side call
  Flow 0 (TCP connection (spliced)): 33615 from write-side call (passed 98304)
  Flow 0 (TCP connection (spliced)): -1 from read-side call
  Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 524288)
  Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:580
  Flow 0 (TCP connection (spliced)): OUT_WAIT_0

we first pile up 98304 - 33615 = 64689 pending bytes, that we read but
couldn't write, as the receiver buffer is full, and we set the
corresponding OUT_WAIT flag. Then:

  pasta: epoll event on connected spliced TCP socket 54 (events: 0x00000001)
  Flow 0 (TCP connection (spliced)): 32768 from read-side call
  Flow 0 (TCP connection (spliced)): -1 from write-side call (passed 32768)
  Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:580

we splice() 32768 more bytes from our receiving side to the pipe. At
some point:

  pasta: epoll event on connected spliced TCP socket 49 (events: 0x00000004)
  Flow 0 (TCP connection (spliced)): event at tcp_splice_sock_handler:489
  Flow 0 (TCP connection (spliced)): ~OUT_WAIT_0
  Flow 0 (TCP connection (spliced)): 1320 from read-side call
  Flow 0 (TCP connection (spliced)): 1320 from write-side call (passed 1320)

the receiver is signalling to us that it's ready for more data
(EPOLLOUT). We reset the OUT_WAIT flag, read 1320 more bytes from
our receiving socket into the pipe, and that's what we write to the
receiver, forgetting about the pending 97457 bytes we had, which the
receiver might never get (not the same 97547 bytes: we'll actually
send 1320 of those).

This condition is rather hard to reproduce, and it was observed with
Podman pulling container images via HTTPS. In the traces above, the
client is side 0 (the initiating peer), and the server is sending the
whole data.

Instead of splicing from pipe to socket the amount of data we just
read, we need to splice all the pending data we piled up until that
point. We could do that using 'read' and 'written' counters, but
there's actually no need, as the kernel also keeps track of how much
data is available on the pipe.

So, to make this simple and more robust, just give the whole pipe size
as length to splice(). The kernel knows what to do with it.

Later in the function, we used 'to_write' for an optimisation meant
to reduce wakeups which retries right away to splice() in both
directions if we couldn't write to the receiver the whole amount of
pending data. Calculate a 'pending' value instead, only if we reach
that point.

Now that we check for the actual amount of pending data in that
optimisation, we need to make sure we don't compare a zero or negative
'written' value: if we met that, it means that the receiver signalled
end-of-file, an error, or to try again later. In those three cases,
the optimisation doesn't make any sense, so skip it.

Reported-by: Ed Santiago <[email protected]>
Reported-by: Paul Holzinger <[email protected]>
Analysed-by: Paul Holzinger <[email protected]>
Link: containers/podman#24219
Signed-off-by: Stefano Brivio <[email protected]>
Reviewed-by: David Gibson <[email protected]>
hswong3i pushed a commit to alvistack/passt-top-passt that referenced this issue Oct 31, 2024
…cceeds

Don't report bogus failures (with --trace) just because the return
value is not zero.

Link: containers/podman#24219
Signed-off-by: Stefano Brivio <[email protected]>
Reviewed-by: David Gibson <[email protected]>
@sbrivio-rh
Copy link
Collaborator

Debian unstable, passt_0.0~git20241030.ee7d0b6-1, but I've been waiting five hours now for my upload to be accepted into unstable (upload was processed at 12:51:50Z) and it didn't happen yet. I'll keep you posted...

Finally available now.

edsantiago added a commit to edsantiago/container_automation_images that referenced this issue Oct 31, 2024
passt, for containers/podman#24219

crun, for containers/podman#24327

Do not merge, because:
  1. crun 1.18.1 is buggy, we really want 1.18.2
  2. we really need to focus on containers#390 (bumping to f41)

Signed-off-by: Ed Santiago <[email protected]>
@edsantiago
Copy link
Member Author

As of #24485 debian and f41 are on pasta 10-30 but f40 (prior-fedora) is still on 09-06. Closing in hopes that the flake will eventually fade away.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
flakes Flakes from Continuous Integration network Networking related issue or feature pasta pasta(1) bugs or features rootless
Projects
None yet
Development

No branches or pull requests

3 participants