Re: Via-Rhine stalls - transmit errors

From: Richard B. Johnson (root@chaos.analogic.com)
Date: Thu Mar 21 2002 - 16:56:51 EST


On Thu, 21 Mar 2002, Ivan Gurdiev wrote:

> if ((intr_status & ~( IntrLinkChange | IntrStatsMax |
> IntrTxAborted ))) {
> if (debug > 1)
> printk(KERN_ERR "%s: Something Wicked happened!
> %4.4x.\n",dev->name, intr_status);
> /* Recovery for other fault sources not known. */
> writew(CmdTxDemand | np->chip_cmd, dev->base_addr +
> ChipCmd);
> }
>
> What's classified as "Something Wicked" ?
>
> Mar 20 21:52:00 cobra kernel: eth0: Something Wicked
> happened! 0008.
>
> This is tx abort isn't it?
>
> Mar 20 21:51:59 cobra kernel: eth0: Something Wicked
> happened! 001a.
>
> ...and this should be : tx underrun, tx abort, tx done
>
> are those supposed to be logged as "Wicked"?
> Those interrupts are handled earlier aren't they?
> if (intr_status & (underflow | IntrTxAbort))
> ...
> if (intr_status & IntrTxUnderrun) {
> ...
>
>
> I'm quite ignorant of all this, but I'm trying to
> learn. I apologize if this is a stupid question.
>

If there was a link-mode change (100-to-10-base, 1/2 to full duplex) OR
if the chip status overflowed (tx packets, rx, packets, errors, etc) OR
if the transmitter aborted (unplug when active, etc.) THEN
   reset and reprogram the chip (after telling you something wicked
   happened IF verbose debug is enabled).

You can turn OFF verbose debug (set debug to 1) and you won't have
the message.

Cheers,
Dick Johnson

Penguin : Linux version 2.4.18 on an i686 machine (797.90 BogoMips).

                 Windows-2000/Professional isn't.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Mar 23 2002 - 22:00:26 EST