On Sun, May 26, 2002 at 02:41:30PM +0100, David Woodhouse wrote:
> torvalds@transmeta.com said:
> > Also, it's generally a good idea to "just say no" to endless loops in
> > drivers. Hardware bugs _do_ happen, and it's a lot more pleasant to
> > have the driver do a
> > printk("Device does not respond\n");
> > than for the kernel to hang.
>
> Too late. On some hardware, if you try to talk to the device once it's
> gone, you're already dead. Not all the world is a PeeCee.
That happens even on a "PeeCee".
Situation:
- Normal readl() of a ioremap()ed register set of a
PCI device[1]:
-> machine hangs hard (no magic sysrq possible, no Ooops, no
panic printed)
- Several DWORD reads of the same register set succeded before
and the register is wired according to the SPEC.
Just to provide an argument here
PS: I wish I had an PCI Analyzer available...
[1] TI TMS320C6x EVM Board[2], Rev. 3
with PCI-Bridge Chip AMCC S5933[3] hanging the host side on Busmaster DMA.
[2] PCI-ID: 0x104c:0x1002
[3] PCI-ID: 0x10e8:0x4750 or 0x10e8:0x807d or 0x10e8:0x809c
-- Science is what we can tell a computer. Art is everything else. --- D.E.Knuth - 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 : Fri May 31 2002 - 22:00:22 EST