From owner-freebsd-hardware Thu Dec 31 12:04:15 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id MAA12536 for freebsd-hardware-outgoing; Thu, 31 Dec 1998 12:04:15 -0800 (PST) (envelope-from owner-freebsd-hardware@FreeBSD.ORG) Received: (from wpaul@localhost) by hub.freebsd.org (8.8.8/8.8.8) id MAA12517; Thu, 31 Dec 1998 12:04:07 -0800 (PST) (envelope-from wpaul) From: Bill Paul Message-Id: <199812312004.MAA12517@hub.freebsd.org> Subject: Re: Good, cheap 100BaseT Ethernet cards? In-Reply-To: <4.1.19981225003737.059813b0@127.0.0.1> from Brett Glass at "Dec 25, 98 00:43:29 am" To: brett@lariat.org (Brett Glass) Date: Thu, 31 Dec 1998 12:04:07 -0800 (PST) Cc: bruce@zuhause.mn.org, mturpin@shadow.spel.com, hardware@FreeBSD.ORG X-Mailer: ELM [version 2.4ME+ PL32 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-hardware@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org > At 04:46 PM 12/24/98 -0800, Bill Paul wrote: > > >- Winbond W89C840F cards, such as the Trendware T100-PCIE. This chip > > is a half-hearted tulip clone, however it suffers from some extreme > > brain damage. I recently discovered that it generates corrupt packets > > at 10Mbps half-duplex mode in some cases and I'm still trying to > > find a way around this problem. It does appear to work okay in > > 10Mbps full-duplex and at 100Mbps modes. If somebody dumps a bunch > > of these on your desk, give them a try, but don't expect too much. Actually, I want to retract this statement about the Winbond chip generating corrupt frames at 10Mbps half-duplex. Upon further investigation, it turned out that the problem was not the Winbond cards generating bad frames: it was the Netgear FA310-TX cards on the other end DMAing bad packets in promiscuous mode. I happen to have one machine with two Winbond cards, each of which was directly wired to a machine with a Netgear FA310-TX Rev D1 card with a PNIC chip. Running tcpdump on both PNICs and observing traffic transmitted from the Winbond cards, it looked like the Winbonds were sending out crap data. It was actually the Netgear cards: when the promiscuous mode bit is turned on, and there's heavy traffic being exchanged, the PNIC chip sometimes DMAs a whole crapload of data along with the desired received frame. Since tcpdump turns on promiscuous mode by default, it was tripping the bug. This only seems to happen with revision 33 PNIC chips. The LinkSys LNE100TX has a revision 32 chip (at least, the one I have does) and doesn't exhibit this problem. I communicated with Netgear support, and they confirmed that they're aware of problems with promiscuous mode with these cards, but they didn't have a workaround. I suppose most Windoze users would be unaware of the problem since Windoze doesn't use promiscuous mode. I just committed a change to the PNIC driver that implements a software workaround for this bug; it jumps through some hoops to salvage the received frames that get mangled with the bug trips. It's sort of a kludge, bug the performance impact shouldn't be too bad since the problem only seems to happen at 10Mbps (and it never happens in full-duplex). -Bill To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hardware" in the body of the message