aboutgitcodebugslistschat
path: root/contrib
diff options
context:
space:
mode:
authorDavid Gibson <david@gibson.dropbear.id.au>2025-04-04 21:15:34 +1100
committerStefano Brivio <sbrivio@redhat.com>2025-04-07 21:30:17 +0200
commit3a0881dfd02d758b0dc8ca6f5732bcb666b6d21e (patch)
tree3e02469345540dfb9c256d36ed26fd420067d30a /contrib
parent84ab1305fabaf07b5badf433e55a458de5b86918 (diff)
downloadpasst-3a0881dfd02d758b0dc8ca6f5732bcb666b6d21e.tar
passt-3a0881dfd02d758b0dc8ca6f5732bcb666b6d21e.tar.gz
passt-3a0881dfd02d758b0dc8ca6f5732bcb666b6d21e.tar.bz2
passt-3a0881dfd02d758b0dc8ca6f5732bcb666b6d21e.tar.lz
passt-3a0881dfd02d758b0dc8ca6f5732bcb666b6d21e.tar.xz
passt-3a0881dfd02d758b0dc8ca6f5732bcb666b6d21e.tar.zst
passt-3a0881dfd02d758b0dc8ca6f5732bcb666b6d21e.zip
udp: Don't bother to batch datagrams from "listening" socket
A "listening" UDP socket can receive datagrams from multiple flows. So, we currently have some quite subtle and complex code in udp_buf_listen_sock_data() to group contiguously received packets for the same flow into batches for forwarding. However, since we are now always using flow specific connect()ed sockets once a flow is established, handling of datagrams on listening sockets is essentially a slow path. Given that, it's not worth the complexity. Substantially simplify the code by using an approach more like vhost-user, and "peeking" at the address of the next datagram, one at a time to determine the correct flow before we actually receive the data, This removes all meaningful use of the s_in and tosidx fields in udp_meta_t, so they too can be removed, along with setting of msg_name and msg_namelen in the msghdr arrays which referenced them. Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Diffstat (limited to 'contrib')
0 files changed, 0 insertions, 0 deletions