aboutgitcodebugslistschat
path: root/passt.h
diff options
context:
space:
mode:
authorStefano Brivio <sbrivio@redhat.com>2021-04-30 14:52:18 +0200
committerStefano Brivio <sbrivio@redhat.com>2021-04-30 14:52:18 +0200
commite07f539ae0aa3ad623c4e8afcaca26906fd1eb17 (patch)
tree869fc954471b65f6659ca87d9068fd9143e87674 /passt.h
parent605af213c5e0fa047f6d8caef5bcef61a0987c8d (diff)
downloadpasst-e07f539ae0aa3ad623c4e8afcaca26906fd1eb17.tar
passt-e07f539ae0aa3ad623c4e8afcaca26906fd1eb17.tar.gz
passt-e07f539ae0aa3ad623c4e8afcaca26906fd1eb17.tar.bz2
passt-e07f539ae0aa3ad623c4e8afcaca26906fd1eb17.tar.lz
passt-e07f539ae0aa3ad623c4e8afcaca26906fd1eb17.tar.xz
passt-e07f539ae0aa3ad623c4e8afcaca26906fd1eb17.tar.zst
passt-e07f539ae0aa3ad623c4e8afcaca26906fd1eb17.zip
udp, passt: Introduce socket packet buffer, avoid getsockname() for UDP
This is in preparation for scatter-gather IO on the UDP receive path: save a getsockname() syscall by setting a flag if we get the numbering of all bound sockets in a strict sequence (expected, in practice) and repurpose the tap buffer to be also a socket receive buffer, passing it down to protocol handlers. Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Diffstat (limited to 'passt.h')
-rw-r--r--passt.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/passt.h b/passt.h
index 009cedb..22a91d6 100644
--- a/passt.h
+++ b/passt.h
@@ -14,6 +14,8 @@ struct tap_msg {
size_t l4_len;
};
+#define SOCK_BUF_BYTES (ETH_MAX_MTU * 4)
+
#include "icmp.h"
#include "tcp.h"
#include "udp.h"
@@ -62,5 +64,5 @@ struct ctx {
struct icmp_ctx icmp;
struct tcp_ctx tcp;
- struct tcp_ctx udp;
+ struct udp_ctx udp;
};