Date: Thu, 20 Dec 2007 11:06:03 +0900 From: Pyun YongHyeon <pyunyh@gmail.com> To: Andrey Chernov <ache@nagual.pp.ru>, current@freebsd.org Subject: Re: Question about dev.fxp.0.noflow Message-ID: <20071220020602.GB993@cdnetworks.co.kr> In-Reply-To: <20071220013720.GA91833@nagual.pp.ru> References: <20071219013343.GA38367@nagual.pp.ru> <20071220012521.GA993@cdnetworks.co.kr> <20071220013720.GA91833@nagual.pp.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Dec 20, 2007 at 04:37:20AM +0300, Andrey Chernov wrote: > On Thu, Dec 20, 2007 at 10:25:22AM +0900, Pyun YongHyeon wrote: > > On Wed, Dec 19, 2007 at 04:33:44AM +0300, Andrey Chernov wrote: > > > Does anybody know why dev.fxp.0.noflow=1 by default? > > > Is it more proper to set it to 0? (by default or via /etc/sysctl.conf) > > > > > > > Since flow control is valid only when link partner also agrees on > > advertised pause capability on full-duplex media, it needs more work > > in mii/phy driver to advertise correct pause capability. It also needs > > a way to pass negotiated pause capability back to drvier such that > > each drvier should program necessary flow control parameters depending > > on its MAC capability and negociated ones. Just enabling flow control > > on one side have no effect. > > I also found this note in the commit log: > > date: 2003/05/16 01:13:16; author: rwatson; state: Exp; lines: +5 -1 > Add a tunable/sysctl "hw.fxp_noflow" which disables flow control support > on if_fxp cards. When flow control is enabled, if the operating system > doesn't acknowledge the packet buffer filling, the card will begin to > generate ethernet quench packets, but appears to get into a feedback > loop of some sort, hosing local switches. This is a temporary workaround > for 5.1: the ability to configure flow control should probably be > exposed by some or another management interface on ethernet link layer > devices. > > Does it mean card hardware defect or lack of driver support? I.e. is this > phrase > "When flow control is enabled, if the operating system doesn't acknowledge > the packet buffer filling" > still true with latest drivers framework (the note as old as 2003)? > I'm not familiar with fxp(4) but it would be lack of driver support. I can't see any special things on flow control in 82559 datasheet. Also I can hardly believe flow control capability of fxp(4) works as expected because it doesn't check negotiated link capability. At least fxp(4) should have a handler for miibus_statchg method that will decide which pause capability would be activated depending on duplex state/link partner pause capability . -- Regards, Pyun YongHyeon
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20071220020602.GB993>