fxp0 interface going up/down/up/down (dhclient related?)
Alban Hertroys
haramrae at gmail.com
Sun Jun 9 12:48:32 UTC 2013
On Jun 9, 2013, at 12:44, Jeremy Chadwick <jdc at koitsu.org> wrote:
> On Sun, Jun 09, 2013 at 12:21:37PM +0200, Alban Hertroys wrote:
>> I'm having an issue where my fxp0 interface keeps looping between DOWN/UP, with dhclient requesting a lease each time in between. I think it's caused by dhclient:
>>
>> solfertje # dhclient -d fxp0
>> DHCPREQUEST on fxp0 to 255.255.255.255 port 67
>> send_packet: Network is down
>> DHCPREQUEST on fxp0 to 255.255.255.255 port 67
>> DHCPACK from 109.72.40.1
>> bound to 141.105.10.89 -- renewal in 7200 seconds.
>> fxp0 link state up -> down
>> fxp0 link state down -> up
>> DHCPREQUEST on fxp0 to 255.255.255.255 port 67
>> DHCPACK from 109.72.40.1
>> bound to 141.105.10.89 -- renewal in 7200 seconds.
>> fxp0 link state up -> down
>> fxp0 link state down -> up
>> DHCPREQUEST on fxp0 to 255.255.255.255 port 67
>> DHCPACK from 109.72.40.1
>> bound to 141.105.10.89 -- renewal in 7200 seconds.
>> fxp0 link state up -> down
>> fxp0 link state down -> up
>> DHCPREQUEST on fxp0 to 255.255.255.255 port 67
>> DHCPACK from 109.72.40.1
>> bound to 141.105.10.89 -- renewal in 7200 seconds.
>> fxp0 link state up -> down
>> fxp0 link state down -> up
>> DHCPREQUEST on fxp0 to 255.255.255.255 port 67
>> DHCPACK from 109.72.40.1
>> bound to 141.105.10.89 -- renewal in 7200 seconds.
>> fxp0 link state up -> down
>> ^C
>>
>> In above test I turned off devd (/etc/rc.d/devd stop) and background dhclient (/etc/rc.d/dhclient stop fxp0), and I still go the above result. There's practically no time spent between up/down cycles, this just keeps going on and on.
>> fxp0 is the only interface that runs on DHCP. The others have static IP's.
>>
>> Initially I thought the issue might be caused by devd, because I have both ethernet and 822.11 type NICs (2x ethernet, 1x wifi) in that system.
>>
>> This is 9-STABLE from yesterday.
>>
>> Before, I had 9-RELEASE running on this system with the same config, and that worked well.
>
> And so what I predicted begins...
>
> The issue is described in the 8.4-RELEASE Errata Notes; the driver is
> using the same driver version as in stable/9, hence you're experiencing
> the same problem. See Open Issues:
>
> http://www.freebsd.org/releases/8.4R/errata.html
>
> No fix for this has been committed. It is still under discussions by
> multiple kernel folks as to where the fix should be applied (dhclient or
> the fxp(4) driver), because the changes made to dhclient (that tickle
> this bug) may actually affect more drivers than just fxp(4).
>
> You can start by reading the (extremely long but very informative)
> thread here. I do urge you to read all the posts, not skim them:
>
> http://lists.freebsd.org/pipermail/freebsd-stable/2013-May/073440.html
> http://lists.freebsd.org/pipermail/freebsd-stable/2013-May/thread.html#73440
Goodness, and here I was hoping it was just a silly mistake I made…
IIUC, the issue is a combination of:
- dhclient now being aware of link state changes and
- the fxp driver reinitializes for certain mode changes, such as assigning an IP address
Which causes dhclient to think that the link state changed, fetch a "new" IP address and assigns it to the fxp adapter again, causing the same link state change over and over again.
Is that about correct?
> The only known workarounds at this time are:
>
> a) Cease use of DHCP; set a static IP in rc.conf,
>
> b) Try some of the patches mentioned within the above thread,
> specifically this one:
> http://lists.freebsd.org/pipermail/freebsd-stable/2013-May/073581.html
Or c) Use DHCP with a static media setting:
ifconfig_fxp0="DHCP media 100baseTX mediaopt full-duplex"
That worked for two out of three people apparently.
I'm not done reading this thread yet though and I noticed a patch by YongHyeon that I'll test first.
> The patch is for head (CURRENT) so it may not patch cleanly. If not,
> you can try to work the patch in yourself/by hand, or you can ask
> Yong-Hyeon or others for help.
>
>> I'm not sure it's related, but on the wireless interface I get alot of:
>> Jun 9 12:08:11 solfertje kernel: ath0: stuck beacon; resetting (bmiss count 4)
>
> Absolutely 100% unrelated. That issue has been around for years, and
> the root cause varies tremendously. I discussed it back in February
> 2011:
>
> http://lists.freebsd.org/pipermail/freebsd-stable/2011-February/061700.html
>
> If you want to know how I solved that problem, I can tell you, but I'm
> certain you won't be happy to hear what I have to say.
>
> If you're concerned about this problem, please start another thread
> discussing it. I'm sure Adrian Chadd can provide you lots of insights,
> but most of them are already in his response to my above thread/post.
Right, then I won't polute this thread with wifi-related issues any further.
Alban Hertroys
--
If you can't see the forest for the trees,
cut the trees and you'll find there is no forest.
More information about the freebsd-stable
mailing list