[PATCH] Fix for e1000 (em/igb) NOARP issue [Was Re: em(4):
sending ARP regardless of NOARP flag]
jfvogel at gmail.com
Tue Aug 18 22:03:27 UTC 2009
Yes, I knew it was all your fault :)
I was asking about this last week on IRC, without this code in place it
always end up doing a re-init, it should not but if it didn't then another
broke according to Sam, think it was re.
Should have the root cause fixed, but I'm ok with this temporary enhanced
hack for now.
On Tue, Aug 18, 2009 at 2:49 PM, Pyun YongHyeon <pyunyh at gmail.com> wrote:
> On Tue, Aug 18, 2009 at 02:03:37PM -0700, Xin LI wrote:
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA1
> > Hi, Jack,
> > I have looked into the code history and found that sys/dev/em/if_em.c,v
> > 1.119 has introduced the arp_ifinit() call in order to fix the problem
> > that if_em won't send ARP when IP address is changed.
> > I think we can further improve it as attached, say, only do it when
> > IFF_NOARP is not set. This should have no effect for usual
> > configuration but fix the problem when NOARP is the desired behavior.
> That change was introduced by me. I guess the root cause of the
> problem was long initialization time of hardware which in turn
> resulted in unbearable boot time when multiple-alias addresses are
> assigned to em(4). I don't remember details,though.
> Since we're in the release cycle, the change you suggested would be
> quick fix for 8.0. I think em(4)/igb(4) should remove SIOCSIFADDR
> handling in driver which is layering violation.
More information about the freebsd-net