diff options
author | Laurent Vivier <lvivier@redhat.com> | 2024-03-07 12:01:44 +0100 |
---|---|---|
committer | Laurent Vivier <lvivier@redhat.com> | 2024-03-11 15:58:29 +0100 |
commit | a66fceb28076916ec999619f7a0a5264b8a513c0 (patch) | |
tree | 6f00349cb3910e078818676a184c34dadffbaa19 /Makefile | |
parent | 137ce017896b2b64f8c45a8ddefbaed2cb71c445 (diff) | |
download | passt-a66fceb28076916ec999619f7a0a5264b8a513c0.tar passt-a66fceb28076916ec999619f7a0a5264b8a513c0.tar.gz passt-a66fceb28076916ec999619f7a0a5264b8a513c0.tar.bz2 passt-a66fceb28076916ec999619f7a0a5264b8a513c0.tar.lz passt-a66fceb28076916ec999619f7a0a5264b8a513c0.tar.xz passt-a66fceb28076916ec999619f7a0a5264b8a513c0.tar.zst passt-a66fceb28076916ec999619f7a0a5264b8a513c0.zip |
tcp: Replace TCP buffer structure by an iovec array
To be able to provide pointers to TCP headers and IP headers without
worrying about alignment in the structure, split the structure into
several arrays and point to each part of the frame using an iovec array.
Using iovec also allows us to simply ignore the first entry when the
vnet length header is not needed. And as the payload buffer contains
only the TCP header and the TCP data we can increase the size of the
TCP data to USHRT_MAX - sizeof(struct tcphdr).
As a side effect, these changes improve performance by a factor of
x1.5.
Signed-off-by: Laurent Vivier <lvivier@redhat.com>
Diffstat (limited to 'Makefile')
0 files changed, 0 insertions, 0 deletions