UDP: introduce RX skb cache
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest2 patches 11 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/2 | udp: if the rx queue is full, free the skb in __udp_enqueue_schedule_skb()net/ net/ | +1 | 0 replies | |
| 2/2 | udp: implement and use per cpu rx skbs cachenet/ | +159 | 11 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH net-next 0/2] UDP: introduce RX skb cache
The goal of this series is to improve UDP performance in the RX path, that got worse when spectre/meltdown mithigations were introduced.
The main idea is to move almost entirely the cost of skb handling from the receiver process context into the BH processing, leveraging, for small packets, a newly introduced, BH managed, skb cache. This is somewhat similar to copy-break and the implementation details are in the main patch.
Overall this gives a performance improvement up to 20% in for UDP flood stress test and above 5% for real-life DNS performance tests.
Paolo Abeni (2):
udp: if the rx queue is full, free the skb in
__udp_enqueue_schedule_skb()
udp: implement and use per cpu rx skbs cache
net/ipv4/udp.c | 162 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++- net/ipv6/udp.c | 1 - 2 files changed, 160 insertions(+), 3 deletions(-)
Signature · 1 line
2.14.3