Re: PCI excessive retry error

From: Richard B. Johnson
Date: Mon May 10 2004 - 07:18:59 EST


On Mon, 10 May 2004, Shobhit Mathur wrote:

> Hello,
>
> I have a situation in which sending ioctls from a user
> application to an HBA at the same time as active I/Os
> running on the same card causes a critical error as -
> PCI excessive retry error.
>
> I would like to know what can be the causes of such a
> problem and what type of solution can resolve such
> problems.....?
>
> - Thank you
>

How do you know? The PCI/Bus transparently retries. What
facillity reports the error? In any event, if the PCI/Bus
hasn't been destroyed, the problem is caused by the failure
of some driver to set the cache-line size and/or the
latency timer. For ix86 machines the cache-line size
is "8" (8 longwords). Some software may mistakenly
set it to 32 because the author didn't understand the
documentation. A latency timer of 64 or lower, and a
cache-line size of 8 should solve your problems. These
problems don't show up unless the PCI device is a bus-master.

I mentioned a "broken bus" in the beginning. Some new
PCI boards are not 5-volt tolerant. If you plug them into
the PCI bus of some motherboards (Intel 865PE chipset),
The Intel D865PERL, for one, the PCI/Bus will get blown.
Same with the MS-6585 (648 MAX board). I blew up several
boards by plugging 3.5 volt PCI cards into the 5 volt
bus. According to the rules, it's supposed to work unless
the PCI slots have "Cadium Yellow" or "Brilliant Blue"
keying plugs (I kid you not, it's in the PCI specs).

Anyway, you get to eat a few US$150 boards if you are not
careful.

Cheers,
Dick Johnson
Penguin : Linux version 2.4.26 on an i686 machine (5557.45 BogoMips).
Note 96.31% of all statistics are fiction.


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