From owner-freebsd-net@FreeBSD.ORG Wed Jul 2 13:51:24 2008 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 78A5A106567E for ; Wed, 2 Jul 2008 13:51:24 +0000 (UTC) (envelope-from andre@freebsd.org) Received: from c00l3r.networx.ch (c00l3r.networx.ch [62.48.2.2]) by mx1.freebsd.org (Postfix) with ESMTP id 9DF408FC17 for ; Wed, 2 Jul 2008 13:51:23 +0000 (UTC) (envelope-from andre@freebsd.org) Received: (qmail 14361 invoked from network); 2 Jul 2008 12:42:46 -0000 Received: from localhost (HELO [127.0.0.1]) ([127.0.0.1]) (envelope-sender ) by c00l3r.networx.ch (qmail-ldap-1.03) with SMTP for ; 2 Jul 2008 12:42:46 -0000 Message-ID: <486B87DB.3080007@freebsd.org> Date: Wed, 02 Jul 2008 15:51:23 +0200 From: Andre Oppermann User-Agent: Thunderbird 1.5.0.14 (Windows/20071210) MIME-Version: 1.0 To: "Bjoern A. Zeeb" References: <4852E23E.2040505@gtcomm.net> <4854EBF1.7020708@FreeBSD.org> <200807010606.m6166jFe084204@lava.sentex.ca> <4869EC1E.8060009@freebsd.org> <20080701084933.W57089@maildrop.int.zabbadoz.net> <20080701092254.T57089@maildrop.int.zabbadoz.net> In-Reply-To: <20080701092254.T57089@maildrop.int.zabbadoz.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-net@freebsd.org, Mike Tancsa , "Bruce M. Simpson" , Paul Subject: Re: Route messages X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Jul 2008 13:51:24 -0000 Bjoern A. Zeeb wrote: > On Tue, 1 Jul 2008, Bjoern A. Zeeb wrote: > > Hi, > >> On Tue, 1 Jul 2008, Andre Oppermann wrote: >> >> Hi, >> >>> Mike Tancsa wrote: >>>> I am thinking >>>> >>>> http://lists.freebsd.org/pipermail/cvs-src/2008-April/090303.html >>>> is the commit ? If I revert to the prev version, the issue goes away. >> >> Ha, I finally know why I ended up on Cc: of a thread I had no idea >> about. Someone could have told me instead of blindly adding me;-) >> >> >>> Yes, this change doesn't look right. It should only do the route >>> lookup in ip_input.c when there was an EMSGSIZE error returned by >>> ip_output(). The rtalloc_ign() call causes the message to be sent >>> because it always sets report to one. The default message is RTM_MISS. >>> >>> I'll try to prep an updated patch which doesn't have these issues later >>> today. >> >> Yeah my bad. Sorry. >> >> If you do that, do not do an extra route lookup if possible, correct >> the rtalloc call. Thanks. > > So I had a very quick look at the code between doing something else. > I think the only change needed is this if I am not mistaken but my > head is far away nowhere close enough in this code. > > Andre, could you review this? Yes, this should fix the problem. I haven't tested the patch though. -- Andre > Index: sys/netinet/ip_input.c > =================================================================== > RCS file: /shared/mirror/FreeBSD/r/ncvs/src/sys/netinet/ip_input.c,v > retrieving revision 1.332.2.2 > diff -u -p -r1.332.2.2 ip_input.c > --- sys/netinet/ip_input.c 22 Apr 2008 12:02:55 -0000 1.332.2.2 > +++ sys/netinet/ip_input.c 1 Jul 2008 09:23:08 -0000 > @@ -1363,7 +1363,6 @@ ip_forward(struct mbuf *m, int srcrt) > * the ICMP_UNREACH_NEEDFRAG "Next-Hop MTU" field described in > RFC1191. > */ > bzero(&ro, sizeof(ro)); > - rtalloc_ign(&ro, RTF_CLONING); > > error = ip_output(m, NULL, &ro, IP_FORWARDING, NULL, NULL); > >