From owner-freebsd-net@FreeBSD.ORG Tue Jul 10 05:29:34 2012 Return-Path: Delivered-To: freebsd-net@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 1E3D0106566B for ; Tue, 10 Jul 2012 05:29:34 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from cell.glebius.int.ru (glebius.int.ru [81.19.64.117]) by mx1.freebsd.org (Postfix) with ESMTP id 92B3F8FC08 for ; Tue, 10 Jul 2012 05:29:33 +0000 (UTC) Received: from cell.glebius.int.ru (localhost [127.0.0.1]) by cell.glebius.int.ru (8.14.5/8.14.5) with ESMTP id q6A5TV9J093813; Tue, 10 Jul 2012 09:29:31 +0400 (MSK) (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by cell.glebius.int.ru (8.14.5/8.14.5/Submit) id q6A5TVM4093812; Tue, 10 Jul 2012 09:29:31 +0400 (MSK) (envelope-from glebius@FreeBSD.org) X-Authentication-Warning: cell.glebius.int.ru: glebius set sender to glebius@FreeBSD.org using -f Date: Tue, 10 Jul 2012 09:29:31 +0400 From: Gleb Smirnoff To: Eugene Grosbein Message-ID: <20120710052931.GV21957@glebius.int.ru> References: <4FDB1D71.6050908@freebsd.lublin.pl> <20120615203142.GW28613@glebius.int.ru> <4FDBAFD7.9020606@freebsd.lublin.pl> <4FDF2F81.6030307@sentex.net> <4FDF3097.6080701@freebsd.lublin.pl> <4FE0EE62.5070905@freebsd.lublin.pl> <4FF7F2C6.5070401@freebsd.lublin.pl> <20120709081225.GJ21957@glebius.int.ru> <4FFBB7A8.90201@rdtc.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <4FFBB7A8.90201@rdtc.ru> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: bzeeb-lists@lists.zabbadoz.net, Przemyslaw Frasunek , Mike Tancsa , Ryan Stone , freebsd-net@FreeBSD.org Subject: Re: mpd5/Netgraph issues after upgrading to 7.4 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: Tue, 10 Jul 2012 05:29:34 -0000 On Tue, Jul 10, 2012 at 12:03:36PM +0700, Eugene Grosbein wrote: E> 10.07.2012 03:25, Ryan Stone пишет: E> > On Mon, Jul 9, 2012 at 4:12 AM, Gleb Smirnoff wrote: E> >> This looks very much related to a known race in ARP code. E> >> E> >> See this email and related thread: E> >> E> >> http://lists.freebsd.org/pipermail/freebsd-net/2012-March/031865.html E> >> E> >> Ryan didn't check in any patches since, and I failed to follow on this E> >> problem due to ENOTIME. E> >> E> >> I've added Ryan to Cc. Ryan, what's the status of the problem at your E> >> side? Did you come to any solution? E> > E> > Unfortunately I was never able to come to a satisfactory solution. As E> > I recall, in the end I ran headlong into problems with making the E> > locking sane. The big problem was with arpresolve. At one point it E> > calls callout_reset to schedule the LLE's la_timer. In my patch this E> > would have to be done with a write lock help on the afdata lock. E> > However, this acquisition would have to be done before taking the E> > LLE_LOCK to prevent a LOR, and in the end you conclude that you have E> > to take a write lock on the ifnet's afdata lock for every packet that E> > goes through arpresolve, which was a non-starter. That's the point E> > that I reached before I got distracted by other things at $WORK. E> > E> > As I recall, the in6 case was even worse, as the in6 equivalent of E> > arptimer is significantly more complicated and likes to do crazy E> > things like dropping locks. E> E> It seems, Przemyslaw Frasunek uses proxyarp? E> I have no such problems but I do not use proxyarp. E> Could you get rid of it, Przemyslaw? I'm not sure this is related. The race happens w/o proxy arp as well. -- Totus tuus, Glebius.