aboutgitcodebugslistschat
path: root/test
diff options
context:
space:
mode:
authorDavid Gibson <david@gibson.dropbear.id.au>2026-05-21 16:37:44 +1000
committerStefano Brivio <sbrivio@redhat.com>2026-05-26 12:21:45 +0200
commitac9814efacd984f20da07318d2dcc8bffdc4e669 (patch)
tree767905c420dd4b8455bcd9742b36bedc4fdab929 /test
parentbda823050fba6351b3e9dbf557020bb3ec399d64 (diff)
downloadpasst-ac9814efacd984f20da07318d2dcc8bffdc4e669.tar
passt-ac9814efacd984f20da07318d2dcc8bffdc4e669.tar.gz
passt-ac9814efacd984f20da07318d2dcc8bffdc4e669.tar.bz2
passt-ac9814efacd984f20da07318d2dcc8bffdc4e669.tar.lz
passt-ac9814efacd984f20da07318d2dcc8bffdc4e669.tar.xz
passt-ac9814efacd984f20da07318d2dcc8bffdc4e669.tar.zst
passt-ac9814efacd984f20da07318d2dcc8bffdc4e669.zip
tcp_splice: Clean up flow control path for splice forwarding
Splice forwarding can be blocked either waiting for data from one side or waiting for space on the other. For that reason, tcp_splice_sock_handler() on either socket can forward data in either or both directions, depending on whether we have EPOLLIN, EPOLLOUT or both events. The flow control for this is quite hard to follow though, since we forward in one direction, then sometimes loop back with a goto to do it in the other direction. Simplify this by adding a tcp_splice_forward() function with the logic to forward in one direction and calling it either once or twice from tcp_splice_sock_handler(). Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Diffstat (limited to 'test')
0 files changed, 0 insertions, 0 deletions