From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Miller Subject: Re: [PATCH net-next] net/reuseport: drop legacy code Date: Thu, 30 Nov 2017 11:07:35 -0500 (EST) Message-ID: <20171130.110735.1426575966886834904.davem@davemloft.net> References: Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: netdev@vger.kernel.org, kraig@google.com To: pabeni@redhat.com Return-path: Received: from shards.monkeyblade.net ([184.105.139.130]:46328 "EHLO shards.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751815AbdK3QHh (ORCPT ); Thu, 30 Nov 2017 11:07:37 -0500 In-Reply-To: Sender: netdev-owner@vger.kernel.org List-ID: From: Paolo Abeni Date: Thu, 30 Nov 2017 15:39:34 +0100 > Since commit e32ea7e74727 ("soreuseport: fast reuseport UDP socket > selection") and commit c125e80b8868 ("soreuseport: fast reuseport > TCP socket selection") the relevant reuseport socket matching the current > packet is selected by the reuseport_select_sock() call. The only > exceptions are invalid BPF filters/filters returning out-of-range > indices. > In the latter case the code implicitly falls back to using the hash > demultiplexing, but instead of selecting the socket inside the > reuseport_select_sock() function, it relies on the hash selection > logic introduced with the early soreuseport implementation. > > With this patch, in case of a BPF filter returning a bad socket > index value, we fall back to hash-based selection inside the > reuseport_select_sock() body, so that we can drop some duplicate > code in the ipv4 and ipv6 stack. > > This also allows faster lookup in the above scenario and will allow > us to avoid computing the hash value for successful, BPF based > demultiplexing - in a later patch. > > Signed-off-by: Paolo Abeni Applied, thank you.