[PATCH] Fix for e1000 (em/igb) NOARP issue [Was Re: em(4): sending ARP regardless of NOARP flag]

Pyun YongHyeon pyunyh at gmail.com
Tue Aug 18 21:49:58 UTC 2009


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 mailing list