Optimisation of parallel TCP input
Contributed by rueda on from the unlocked-and-unloaded dept.
Alexander Bluhm (bluhm@
) has
committed
changes which eliminate contention
by caching the socket lock in TCP input:
CVSROOT: /cvs Module name: src Changes by: bluhm@cvs.openbsd.org 2025/05/07 08:10:19 Modified files: sys/net : if.c if_var.h sys/netinet : tcp_input.c tcp_var.h Log message: Cache socket lock during TCP input. Parallel TCP input is running for a few days now and looks quite stable. Final step is to implement caching of the socket lock. Without large receive offloading (LRO) in the driver layer, it is very likely that consecutive TCP segments are in the input queue. This leads to contention of the socket lock between TCP input and socket receive syscall from userland.