Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Aug 2009 11:14:32 -0700 (PDT)
From:      Barney Cordoba <barney_cordoba@yahoo.com>
To:        d@delphij.net, Julian Elischer <julian@elischer.org>
Cc:        pyunyh@gmail.com, David Christensen <davidch@broadcom.com>, "freebsd-net@freebsd.org" <freebsd-net@freebsd.org>, Jack Vogel <jfvogel@gmail.com>, Jack F Vogel <jfv@freebsd.org>, yongari@freebsd.org
Subject:   Re: [PATCH] Fix for e1000 (em/igb) NOARP issue [Was Re: em(4): sending ARP regardless of NOARP flag]
Message-ID:  <121870.41829.qm@web63905.mail.re1.yahoo.com>
In-Reply-To: <4A8B316F.3030408@elischer.org>

next in thread | previous in thread | raw e-mail | index | archive | help
=0A=0A--- On Tue, 8/18/09, Julian Elischer <julian@elischer.org> wrote:=0A=
=0A> From: Julian Elischer <julian@elischer.org>=0A> Subject: Re: [PATCH] F=
ix for e1000 (em/igb) NOARP issue [Was Re: em(4): sending ARP regardless of=
 NOARP flag]=0A> To: d@delphij.net=0A> Cc: pyunyh@gmail.com, "Barney Cordob=
a" <barney_cordoba@yahoo.com>, "David Christensen" <davidch@broadcom.com>, =
"freebsd-net@freebsd.org" <freebsd-net@freebsd.org>, "Jack Vogel" <jfvogel@=
gmail.com>, "Jack F Vogel" <jfv@freebsd.org>, yongari@freebsd.org=0A> Date:=
 Tuesday, August 18, 2009, 6:55 PM=0A> Xin LI wrote:=0A> > -----BEGIN PGP S=
IGNED MESSAGE-----=0A> > Hash: SHA1=0A> > =0A> > Barney Cordoba wrote:=0A> =
>> --- On Tue, 8/18/09, Pyun YongHyeon <pyunyh@gmail.com>=0A> wrote:=0A> >>=
=0A> >>> From: Pyun YongHyeon <pyunyh@gmail.com>=0A> >>> Subject: Re: [PATC=
H] Fix for e1000 (em/igb)=0A> NOARP issue [Was Re: em(4): sending ARP regar=
dless of NOARP=0A> flag]=0A> >>> To: "Xin LI" <delphij@delphij.net>=0A> >>>=
 Cc: "Barney Cordoba" <barney_cordoba@yahoo.com>,=0A> "David Christensen" <=
davidch@broadcom.com>,=0A> "d@delphij..net"=0A> <d@delphij.net>,=0A> "freeb=
sd-net@freebsd.org"=0A> <freebsd-net@freebsd.org>,=0A> "Jack Vogel" <jfvoge=
l@gmail.com>,=0A> "Jack F Vogel" <jfv@freebsd.org>,=0A> yongari@freebsd.org=
,=0A> "Julian Elischer" <julian@elischer.org>=0A> >>> Date: Tuesday, August=
 18, 2009, 5:49 PM=0A> >>> On Tue, Aug 18, 2009 at 02:03:37PM=0A> >>> -0700=
, Xin LI wrote:=0A> >>>> -----BEGIN PGP SIGNED MESSAGE-----=0A> >>>> Hash: =
SHA1=0A> >>>>=0A> >>>> Hi, Jack,=0A> >>>>=0A> >>>> I have looked into the c=
ode history and=0A> found that=0A> >>> sys/dev/em/if_em.c,v=0A> >>>> 1.119 =
has introduced the arp_ifinit() call=0A> in order to=0A> >>> fix the proble=
m=0A> >>>> that if_em won't send ARP when IP address=0A> is changed.=0A> >>=
>>=0A> >>>> I think we can further improve it as=0A> attached, say,=0A> >>>=
 only do it when=0A> >>>> IFF_NOARP is not set.=A0 This should=0A> have no =
effect=0A> >>> for usual=0A> >>>> configuration but fix the problem when=0A=
> NOARP is the=0A> >>> desired behavior.=0A> >>> That change was introduced=
 by me. I guess the=0A> root cause of=0A> >>> the=0A> >>> problem was long =
initialization time of=0A> hardware which in=0A> >>> turn=0A> >>> resulted =
in unbearable boot time when=0A> multiple-alias=0A> >>> addresses are=0A> >=
>> assigned to em(4). I don't remember=0A> details,though.=0A> >>>=0A> >>> =
Since we're in the release cycle, the change=0A> you suggested=0A> >>> woul=
d be=0A> >>> quick fix for 8.0. I think em(4)/igb(4) should=0A> remove=0A> =
>>> SIOCSIFADDR=0A> >>> handling in driver which is layering=0A> violation.=
=0A> >> There are 2 kinds of programmers; those who do=0A> things "correctl=
y',=0A> >> and those that do things that work. =0A> >>=0A> >> 99.99999% of =
the people will be using ARPs, so=0A> don't be silly and=0A> >> break the d=
river to solve a case that almost=0A> no-one cares about please.=0A> > =0A>=
 =0A> Cisco.Ironport=A0 runs 50% (2 out of 4) of their em=0A> interfaces in=
 noarp =0A> mode.=0A=0A=0AAh, are they running Jack's drivers unmodified? S=
eems unlikely.=0A=0ANOARP does work. Does your network catch on fire if the=
 interface sends=0Aan ARP out? Does equipment start failing like dominos? =
=0A=0AMy point was don't make ARPs not work (the reason the "hack" is in=0A=
there is to make something work better) to preserve some fantasy of=0A"laye=
ring" that went out with the 8-track player. The check for =0Athe NOARP fla=
g is a better solution until the subsystem works the =0Away its supposed to=
 work.=0A=0ABarney=0A=0A=0A      




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