aboutgitcodebugslistschat
path: root/tcp.c
diff options
context:
space:
mode:
authorStefano Brivio <sbrivio@redhat.com>2021-09-15 10:41:31 +0200
committerStefano Brivio <sbrivio@redhat.com>2021-09-15 10:41:31 +0200
commit57d17292f913ab148e3e3e4790e12cea9517d8d1 (patch)
tree48c66e066bdad9338f9c9036700c390b45786a54 /tcp.c
parenta041f6d920a4ca78e0d24b2fd84a7c7ecb66d9d7 (diff)
downloadpasst-57d17292f913ab148e3e3e4790e12cea9517d8d1.tar
passt-57d17292f913ab148e3e3e4790e12cea9517d8d1.tar.gz
passt-57d17292f913ab148e3e3e4790e12cea9517d8d1.tar.bz2
passt-57d17292f913ab148e3e3e4790e12cea9517d8d1.tar.lz
passt-57d17292f913ab148e3e3e4790e12cea9517d8d1.tar.xz
passt-57d17292f913ab148e3e3e4790e12cea9517d8d1.tar.zst
passt-57d17292f913ab148e3e3e4790e12cea9517d8d1.zip
pasta: Set spliced connection flag in epoll reference on compaction
...otherwise, we'll mix indices with non-spliced connections. Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Diffstat (limited to 'tcp.c')
-rw-r--r--tcp.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/tcp.c b/tcp.c
index 4d2d485..8ab65eb 100644
--- a/tcp.c
+++ b/tcp.c
@@ -1534,9 +1534,9 @@ static void tcp_conn_from_tap(struct ctx *c, int af, void *addr,
static void tcp_table_splice_compact(struct ctx *c,
struct tcp_splice_conn *hole)
{
- union epoll_ref ref_from = { .proto = IPPROTO_TCP,
+ union epoll_ref ref_from = { .proto = IPPROTO_TCP, .tcp.splice = 1,
.tcp.index = hole - ts };
- union epoll_ref ref_to = { .proto = IPPROTO_TCP,
+ union epoll_ref ref_to = { .proto = IPPROTO_TCP, .tcp.splice = 1,
.tcp.index = hole - ts };
struct tcp_splice_conn *move;
struct epoll_event ev_from;