Date: Sun, 9 Jun 2013 14:48:29 +0200 From: Alban Hertroys <haramrae@gmail.com> To: Jeremy Chadwick <jdc@koitsu.org> Cc: "freebsd-stable@freebsd.org" <freebsd-stable@freebsd.org> Subject: Re: fxp0 interface going up/down/up/down (dhclient related?) Message-ID: <4459171F-E382-488D-81B1-978118665A86@gmail.com> In-Reply-To: <20130609104401.GA33827@icarus.home.lan> References: <EBA9A2E3-3323-4069-9E58-ED4C431FDE4E@gmail.com> <20130609104401.GA33827@icarus.home.lan>
index | next in thread | previous in thread | raw e-mail
On Jun 9, 2013, at 12:44, Jeremy Chadwick <jdc@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.help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4459171F-E382-488D-81B1-978118665A86>
