sis(4) flow control
marius at alchemy.franken.de
Wed Jul 17 17:22:06 UTC 2013
On Wed, Jul 17, 2013 at 12:01:36PM +0000, Christian Weisgerber wrote:
> Yonghyeon PYUN <pyunyh at gmail.com> wrote:
> > msk(4) supported flow-control from day 1 with a hack and it was
> > re-implemented later with proper way such that it always announces
> > flow-control. However for other drivers(i.e vr(4)) that didn't
> > support the feature in the beginning, you have to explicitly enable
> > the feature. The decision was made to provide compatibility and to
> > not introduce POLA.
> Funny how POLA is different for different people. I'm completely
> surprised that flow control isn't enabled by default, and the fact
> that this differs between drivers is outright bizarre.
For the vast majority of MAC drivers taking advantage of mii(4),
flow control just wasn't available before the latter grew proper
support for it. For POLA reasons, it was decided to not change
that situation and, thus, to not suddenly announce flow support
in environments that might not be properly configured and/or tested
for it. The only exception in that regard are five drivers that
previously implemented hacks to support flow control and whose
default was changed to off in order to be consistent with the
remainder while FreeBSD 9 was -current (see the 20101114 UPDATING
For drivers like em(4) that don't take advantage of mii(4) the
default and ways to configure flow control still varies, though.
> The flowcontrol option is also not mentioned in the media type
> section of the drivers' man pages.
It doesn't make sense to document media types in the man pages
of MAC drivers employing mii(4) in the first place and we should
have something like a common media.4 for that. For one, having
such a section in all of these drivers is plain redundant. Second,
technically it just doesn't belong there; PHY rather than MAC
drivers are at the layer dealing with network media. For example,
a Gigabit Ethernet MAC might be equipped with a PHY only capable
of Fast Ethernet, not supporting flow control or fibre in addition
or instead of copper media (which are all examples from reality).
Saying that a specific MAC driver "supports" certain media is
just outright misleading in such cases.
More information about the freebsd-net