From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paolo Abeni Subject: [PATCH net-next 0/2] UDP: introduce RX skb cache Date: Wed, 18 Apr 2018 12:22:36 +0200 Message-ID: Cc: "David S. Miller" , Eric Dumazet To: netdev@vger.kernel.org Return-path: Received: from mx3-rdu2.redhat.com ([66.187.233.73]:43226 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750861AbeDRKXW (ORCPT ); Wed, 18 Apr 2018 06:23:22 -0400 Sender: netdev-owner@vger.kernel.org List-ID: 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(-) -- 2.14.3