Subject: Re: Are framing errors and collision errors normal?
To: Dave Huang <khym@bga.com>
From: Zdenek Salvet <salvet@horn.ics.muni.cz>
List: tech-kern
Date: 12/14/1997 18:35:31
> Are framing errors, FCS errors, and collision errors fairly normal on a
> busy ethernet? I've had some reports of those from people who are using my
> AMD MACE driver on a busy network. I notice that the AMD LANCE doesn't
> print collision errors at all (in am7990_intr(), the check for LE_C0_CERR
> is in an #if 0 block); the framing error (LE_R1_FRAM) and crc mismatch
> (LE_R1_CRC) messages are only printed #ifdef LEDEBUG (see am7990_rint).
> 
> Should I do the same in the MACE driver? According to the MACE
> documentation:
> 
> CERR  Collision Error. CERR indicates the absence of the Signal Quality
>       Error Test (SQE Test) message after a packet transmission. The
>       SQE Test message is a transceiver test feature. Detection depends
>       on the MACE network interface selected. In all cases, CERR will
>       be set if the MACE device failed to observe the SQE Test message
>       within 20 network bit times after the packet transmission ended.

SQE is test feature and is very often turned off; I would do it only
in #if 0 block, so that people who know what are they doing can enable it

> FRAM  Framing Error flag. Indicates that the received frame contained a
>       non-integer multiple of bytes and an FCS error. If there was no
>       FCS error then FRAM will not be set. FRAM is not valid during
>       in-ternal loopback. FRAM will not be set if OFLO is set.
> 
> FCS   FCS Error flag. Indicates that there is an FCS error in the
>       frame. The receive FCS is computed and checked normally when
>       ASTRP RCV = 1, but is not passed to the host. FCS will not be set
>       if OFLO is set.

Framing and FCS errors should be counted (++ifp->if_ierrors), but I would
not print them unless (ifp->if_flags & IFF_DEBUG) because they indicate
invalid individual packets, not card or link failure.
Framing and FCS errors are typically caused by flaky wiring, too long
cables or broken Ethernet cards.

-- 
Zdenek Salvet                                              salvet@ics.muni.cz 
----------------------------------------------------------------------------
           If God had meant for us to be in the Army,
         we would have been born with green, baggy skin.