Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 10 Jul 2012 09:29:31 +0400
From:      Gleb Smirnoff <glebius@FreeBSD.org>
To:        Eugene Grosbein <egrosbein@rdtc.ru>
Cc:        bzeeb-lists@lists.zabbadoz.net, Przemyslaw Frasunek <venglin@freebsd.lublin.pl>, Mike Tancsa <mike@sentex.net>, Ryan Stone <rysto32@gmail.com>, freebsd-net@FreeBSD.org
Subject:   Re: mpd5/Netgraph issues after upgrading to 7.4
Message-ID:  <20120710052931.GV21957@glebius.int.ru>
In-Reply-To: <4FFBB7A8.90201@rdtc.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> <CAFMmRNydo=Bci=WM5mODS0vhiv8%2B2Oj39XKTXkEymYOJunhPxg@mail.gmail.com> <4FFBB7A8.90201@rdtc.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
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 <glebius@freebsd.org> 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.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120710052931.GV21957>