Date: Wed, 27 Sep 2006 12:07:57 -0400 From: Chuck Swiger <cswiger@mac.com> To: Marty Landman <martster@gmail.com> Cc: freebsd-questions@freebsd.org Subject: Re: intermittent boot problem Message-ID: <451AA1DD.8030000@mac.com> In-Reply-To: <70063950609270820p4f104d71gae306bdf3de98ddb@mail.gmail.com> References: <70063950609270820p4f104d71gae306bdf3de98ddb@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Marty Landman wrote: > I've got a new FBSD 5.3 release install on an old Compaq pII-233 w/ 128M > ram. What I get when the boot fails is > > "tx underrun -- using store and forward mode" > > repeating infinitely. > > Now that a reboot has succeeded here's what dmesg shows for dc0: > > dc0: <82c169 PNIC 10/100BaseTX> port 0x1400-0x14ff mem You've got an Asante/Kingston/Linksys PNIC clone of the DEC 21x4x "Tulip" chipset. I've had four out of five of those cards die within two years. If upgrading to 5-STABLE or 6.2 BETA doesn't fix it, consider replacing the NIC with something else: The dc driver programs 82c168 and 82c169 PNIC chips to use the store and forward setting for the transmit start threshold by default. This is to work around problems with some NIC/PCI bus combinations where the PNIC can transmit corrupt frames when operating at 100Mbps, probably due to PCI DMA burst transfer errors. The 82c168 and 82c169 PNIC chips also have a receiver bug that sometimes manifests during periods of heavy receive and transmit activity, where the chip will improperly DMA received frames to the host. The chips appear to upload several kilobytes of garbage data along with the received frame data, dirtying several RX buffers instead of just the expected one. The dc driver detects this condition and will salvage the frame; however, it incurs a serious performance penalty in the process. The PNIC chips also sometimes generate a transmit underrun error when the driver attempts to download the receiver filter setup frame, which can result in the receive filter being incorrectly programmed. The dc driver will watch for this condition and requeue the setup frame until it is transfered successfully. -- -Chuck
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?451AA1DD.8030000>