From owner-freebsd-net@FreeBSD.ORG Thu May 20 14:01:49 2004 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6FC5916A4CF for ; Thu, 20 May 2004 14:01:49 -0700 (PDT) Received: from mailtoaster1.pipeline.ch (mailtoaster1.pipeline.ch [62.48.0.70]) by mx1.FreeBSD.org (Postfix) with ESMTP id AC9E443D45 for ; Thu, 20 May 2004 14:01:48 -0700 (PDT) (envelope-from andre@freebsd.org) Received: (qmail 45803 invoked from network); 20 May 2004 21:01:47 -0000 Received: from unknown (HELO freebsd.org) ([62.48.0.53]) (envelope-sender ) by mailtoaster1.pipeline.ch (qmail-ldap-1.03) with SMTP for ; 20 May 2004 21:01:47 -0000 Message-ID: <40AD1CBA.4CB46233@freebsd.org> Date: Thu, 20 May 2004 23:01:46 +0200 From: Andre Oppermann X-Mailer: Mozilla 4.8 [en] (Windows NT 5.0; U) X-Accept-Language: en MIME-Version: 1.0 To: Pawel Jakub Dawidek References: <20040520173012.GR845@darkness.comp.waw.pl> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit cc: freebsd-net@freebsd.org Subject: Re: Socket selection. X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 May 2004 21:01:49 -0000 Pawel Jakub Dawidek wrote: > > Hello. > > In in_pcblookup_hash() function, in the last loop if we find exact > match, we return immediately, if it is "wild", we store a pointer and > we countinue looking for exact match. > I wonder if this is ok, that we change pointer every time we find a > "wild" match. Is it inteded? Shouldn't it be: > > http://people.freebsd.org/~pjd/patches/in_pcb.c.2.patch No. This is a stack variable which is unconditionally initialized to NULL a few lines earlier. Checking for variable == NULL is always going to be true and makes your 'optimization' just redundand. > While I'm here, I want to improve code readability a bit: > > http://people.freebsd.org/~pjd/patches/in_pcb.c.3.patch > > Is it ok? No. You change the logic of the 'if' statements to something totally different. This ain't going to work in any way. -- Andre