Messages in this thread | | | Date | Mon, 10 May 2004 08:17:35 -0400 (EDT) | From | "Richard B. Johnson" <> | Subject | Re: PCI excessive retry error |
| |
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@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |