On Thu, Jul 06, 2006 at 01:50:59PM -0500, Linas Vepstas wrote: > On Thu, Jul 06, 2006 at 11:01:35AM -0700, Auke Kok wrote: > > Linas Vepstas wrote: > > > > > >Perhaps the right fix is to figure out what parts of the driver do i/o > > >during shutdown, and then add a line "if(wedged) skip i/o;" to those > > >places? > > > > that would be relatively simple if we can check a flag (?) somewhere that > > signifies that we've encountered a pci error. We basically only need to > > skip out after e1000_reset and bypass e1000_irq_disable in e1000_down() > > then. > > > > Does the pci error recovery code give us such a flag? > > Yes,
[...] > Unless I get distracted, I'll provide an e1000 patch shortly ? I sat down to do this and realized it was a lame idea. If a given platform cannot tolerate PCI I/O while a PCI channel is hung, then the plaform should stub out readb()/read()/pci_read_config_word()/etc. as needed to prevent I/O during the critical stage. Otherwise, one is trying to chase down all the locations in the driver that may or may not require I/O to be disabled, which is a hit-or-miss, mistake-prone operation. --linas - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html