aboutgitcodebugslistschat
path: root/tcp_splice.c
diff options
context:
space:
mode:
authorDavid Gibson <david@gibson.dropbear.id.au>2024-01-16 11:50:41 +1100
committerStefano Brivio <sbrivio@redhat.com>2024-01-22 23:35:31 +0100
commit4a849e95267c30e63dbe61c4576c059c927b99d9 (patch)
tree5d73a19f7ee2bb10633deabcf7956bddcc10cdf4 /tcp_splice.c
parentfb7c00169d49a99ea2d14dae05bf0c8190f0971c (diff)
downloadpasst-4a849e95267c30e63dbe61c4576c059c927b99d9.tar
passt-4a849e95267c30e63dbe61c4576c059c927b99d9.tar.gz
passt-4a849e95267c30e63dbe61c4576c059c927b99d9.tar.bz2
passt-4a849e95267c30e63dbe61c4576c059c927b99d9.tar.lz
passt-4a849e95267c30e63dbe61c4576c059c927b99d9.tar.xz
passt-4a849e95267c30e63dbe61c4576c059c927b99d9.tar.zst
passt-4a849e95267c30e63dbe61c4576c059c927b99d9.zip
flow: Abstract allocation of new flows with helper function
Currently tcp.c open codes the process of allocating a new flow from the flow table: twice, in fact, once for guest to host and once for host to guest connections. This duplication isn't ideal and will get worse as we add more protocols to the flow table. It also makes it harder to experiment with different ways of handling flow table allocation. Instead, introduce a function to allocate a new flow: flow_alloc(). In some cases we currently check if we're able to allocate, but delay the actual allocation. We now handle that slightly differently with a flow_alloc_cancel() function to back out a recent allocation. We have that separate from a flow_free() function, because future changes we have in mind will need to handle this case a little differently. Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Diffstat (limited to 'tcp_splice.c')
0 files changed, 0 insertions, 0 deletions